Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net MVC JQuery对话框提交超过1次_Asp.net_Asp.net Mvc_Jquery Ui_Jquery Ui Dialog - Fatal编程技术网

Asp.net MVC JQuery对话框提交超过1次

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

我正在使用JQuery的UI对话框打开表单。我的尝试是提交并关闭对话框。我有麻烦了

父窗口通过单击打开对话框(其中包含部分视图),表单被提交,数据第一次保存在数据库中。但如果我再次单击打开对话框并提交,则有两个数据行以相同的值保存在DB中

我的代码如下:

$('#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');”);}嗨,是的,每次单击时都会创建新对话框。我试过你的建议,但第二次还是提交了两次。