我将表单加载到jquery ui对话框中。我有一个提交按钮(在我的表单中 - 不是实际的对话框按钮)调用控制器操作但我无法弄清楚如何在调用提交后关闭对话框,因为我没有任何我附加的事件处理程序。
除了将提交更改为输入类型=按钮之外还有这样做吗?
我知道在jquery中我可以捕获提交
$('#positionForm').submit(function () {
// do stuff
return true;
});
但是这似乎在提交之前解雇,所以我不想关闭对话框。
以下代码有什么问题:
$('#positionForm').live('submit', function () {
$.post('/MyController/Action', $("#positionForm").serialize(), function (data) {
alert(data);
}, "html");
closeModalPopup();
return false ;
});
答案 0 :(得分:5)
有关更新的问题:您可以在success
回调中调用关闭代码,如下所示:
$('#positionForm').live('submit', function () {
$.post('/MyController/Action', $(this).serialize(), function(data) {
$('#positionForm').closest(".ui-dialog-content").dialog("close");
}, "html");
return false;
});
原始答案:您可以附加表单submit
处理程序,例如:
$("#myform").submit(function() {
$(this).closest(".ui-dialog-content").dialog("close");
});
答案 1 :(得分:0)
您也可以使用$("#name_of_the_dialog")
。对话框("关闭");
比使用$closest