获取按钮点击ID在“onsuccess”;表单提交后的功能
Get button clicked ID in "OnSuccess" function after form submit
我在mvc3中使用Ajax表单。
下面是代码
<% using (Ajax.BeginForm("Method", "Conroller", new AjaxOptions
{
UpdateTargetId = "PopupBody",
HttpMethod = "post",
OnSuccess = "OnSuccessContactInfoSave"
}, new { @id = "frmContactInfo" }))
{ %>
function OnSuccessContactInfoSave( data, textStatus ) {
alert( 'completed with success.' );
}
现在,我在一个页面上有两个按钮,一个是提交按钮,另一个是正常按钮。现在,我想知道点击按钮在Onsuccess函数
我怎么能得到它在"OnSuccessContactInfoSave"功能?
Thanks in Advance
编辑:
This is My View
<% using (Ajax.BeginForm("SaveContactInfo", "ManageUser", new AjaxOptions
{
UpdateTargetId = "PopupBody",
HttpMethod = "Post"
}))
{ %> <div class="ciMain">
<input type="submit" id="btnSaveAndClose" name="btn" value="Save" />
<input type="submit" value="Save and continue to next step" name="btn" />
<input type="button" value="Cancel" />
</div>
<% } %>
This is Controller
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult SaveContactInfo(FormCollection userViewModel, ContactInfoViewModel model, string btn)
{
//string test = Request["btn"].ToString();
try
{
return View("ContactInfo", model);
}
catch (Exception)
{
return View("ContactInfo", model);
}
}
首先,您需要在模型类中创建一个名为SubmissionType的属性ContactInfoViewModel如下:
public class ContactInfoViewModel
{
public string SubmissionType { get; set; }
//Your rest of properties
}
现在在视图中将这个属性名传递到提交按钮中像这样:
<input type="submit" name="SubmissionType" id="btnSumit" value="Submit"/>
<input type="submit" name="SubmissionType" id="btnOther" value="Other"/>
记住,这些按钮必须在表单标签下,也不要忘记将你的模型与视图绑定,就像这样:
@model ClassNamespace.ContactInfoViewModel
现在你需要重新构造你的动作方法,像这样:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult SaveContactInfo(ContactInfoViewModel model)
{
if (model.SubmissionType == "Submit")
{
}
else
{
}
try
{
return View("ContactInfo", model);
}
catch (Exception)
{
return View("ContactInfo", model);
}
}
现在来看看ajax表单标记,您还必须在这里传递Model,以便在表单提交时获得模型的值。这样做:
@using (Ajax.BeginForm("SaveContactInfo", "ManageUser",Model, new AjaxOptions
{
UpdateTargetId = "PopupBody",
HttpMethod = "Post"
}))
正如你在上面的代码中看到的,我也传递了模型作为对象routeValues。
相关文章:
- HTML表单提交时未执行外部函数
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 将图像上传ajax与表单提交ajax相结合
- Javascript无法处理表单提交
- 如何在我的情况下禁用表单提交
- 加载后的页面与ajax表单提交不起作用
- angularjs-控制器在表单提交时未调用
- 禁用带有字符白名单的表单提交
- 如何使用Google Analytics跟踪表单提交
- 使用javascript将表单提交到iframe目标中
- e.preventDefault在表单提交时被忽略
- AngularJS JQuery Ajax表单提交等效
- JavaScript表单提交帮助
- JavaScript表单提交没有't fire asp服务器端点击功能的提交按钮
- 表单提交时,点击顺序功能并提交
- 如何在表单提交时触发两个功能
- 获取按钮点击ID在“onsuccess”;表单提交后的功能
- 功能齐全的jquery表单提交按钮
- 为什么要用按钮呢?表单提交的数据块,当只有图标图像与onclick处理功能可能也工作
- Javascript - 在表单提交时执行所有验证功能