我正在使用JQuery的UI对话框来打开表单。我的尝试是提交并关闭对话框。我遇到了麻烦。
父窗口打开对话框(其中包含部分视图),点击并提交表格,这是第一次将数据保存在数据库中。但是,如果我再次单击打开对话框并提交,则在DB中保存有2个数据行,且值相同。
我的代码如下:
$('#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');"); }
答案 0 :(得分:0)
关闭模态后,您必须重新使用表单(即$form.reset()
)才能再次使用它。
答案 1 :(得分:0)
请提供部分查看代码。
我认为您的表单提交了2次。使用firebug检查生成的请求。
答案 2 :(得分:0)
我找到了解决方案。原因是因为现场活动。因此,在提交后,我称之为死亡事件,如下所示:
$('#form').die('click')
它有效!