Asp.net MVC JQuery对话框提交超过1次
我正在使用JQuery的UI对话框打开表单。我的尝试是提交并关闭对话框。我有麻烦了 父窗口通过单击打开对话框(其中包含部分视图),表单被提交,数据第一次保存在数据库中。但如果我再次单击打开对话框并提交,则有两个数据行以相同的值保存在DB中 我的代码如下:Asp.net MVC JQuery对话框提交超过1次,asp.net,asp.net-mvc,jquery-ui,jquery-ui-dialog,Asp.net,Asp.net Mvc,Jquery Ui,Jquery Ui Dialog,我正在使用JQuery的UI对话框打开表单。我的尝试是提交并关闭对话框。我有麻烦了 父窗口通过单击打开对话框(其中包含部分视图),表单被提交,数据第一次保存在数据库中。但如果我再次单击打开对话框并提交,则有两个数据行以相同的值保存在DB中 我的代码如下: $('#newFileDialog').dialog('destroy');$('#newFileDialog').remove(); 这个代码有什么问题吗 谢谢你的帮助 更新: 局部视图: @using(Html.BeginForm("Ne
$('#newFileDialog').dialog('destroy');$('#newFileDialog').remove();
这个代码有什么问题吗
谢谢你的帮助
更新:
局部视图:
@using(Html.BeginForm("New", "File", new {}, FormMethod.Post, new { Id = "newFileForm" } ))
{
@Html.ValidationSummary()
@Html.RenderHTML(
new TabContainerViewModel(
new TabViewModel { Name = "File", ViewName = "Common", Model = Model, Visible = true},
new TabViewModel { Name = "Permission", ViewName = string.Empty, Visible = true}
) { Id = "createFileTabs", Visible = true })
@Html.SubmitButton("Send")
}
@{ Html.JQueryAjaxForm("newFileForm", "containerComponentContent", string.Empty, "$('#newFileDialog').dialog('destroy');$('#newFileDialog').remove();showMessagebox('New File added');"); }
关闭模式后,在再次使用表单之前,必须重置表单(即
$form.reset()
) 请提供您的部分视图代码
我想你的表格提交了两次。使用firebug检查生成的请求。我找到了解决方案。原因是现场直播。因此,在提交之后,我称之为die事件,如下所示:
$('#form').die('click')
而且它有效 在actionmethod上放置断点以检查导致双重提交的原因..我尝试了$form.reset(),但我从Firebug得到了一个错误:reset不是一个函数是的,很明显,它第二次提交了2次。我更新了我的帖子。您是否每次单击时都创建了新对话框?替换您的行:@{Html.JQueryAjaxForm(“newFileForm”,“containerComponentContent”,string.Empty,“$('#newFileDialog')。dialog('destroy');$('#newFileDialog')。Html(“”);showMessagebox('newfile added');”);}嗨,是的,每次单击时都会创建新对话框。我试过你的建议,但第二次还是提交了两次。