Javascript 关闭表单提交时的Jquery对话框

Javascript 关闭表单提交时的Jquery对话框,javascript,jquery,Javascript,Jquery,在上面的函数中,我无法导航到Action php页面。对话框无限期运行,当表单提交时,我应该如何关闭对话框在我的模型窗口中,我使用带有MVC的AJAX表单,但无论采用何种技术,解决方案都应能工作 $('#srch').click(function(e){ if ($("#form").validationEngine({returnIsValid:true})) { $("#loader").dialog('open'); $.ajax({

在上面的函数中,我无法导航到Action php页面。对话框无限期运行,当表单提交时,我应该如何关闭对话框在我的模型窗口中,我使用带有MVC的AJAX表单,但无论采用何种技术,解决方案都应能工作

$('#srch').click(function(e){
    if ($("#form").validationEngine({returnIsValid:true})) {
          $("#loader").dialog('open');
        $.ajax({
            type: "GET",
            url: "/cdr/abc.php",
            cache: false,
            data: $("#srch").serialize(),
            timeout: 5000,
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                //ajaxSubmitError(XMLHttpRequest, textStatus, errorThrown);
            },
            success: function (data) {
                $('#submit-dialog').dialog('close');
            }
            }); 
            e.preventDefault();
    }


});

您还可以在错误事件中关闭对话框

    function CloseDialog() {
        $("#Modal").dialog("close");
    }

你实际上需要这样的东西:

error: function (XMLHttpRequest, textStatus, errorThrown) {
    $('#submit-dialog').dialog('close');
},

您可以在保存函数中执行的任何验证。

为什么要打开名为loader的对话框并关闭dialog submit dialog?您调用dialog“open”的原因是否与.dialog“close”不同?试着在loader上给他们两个都打电话。
error: function (XMLHttpRequest, textStatus, errorThrown) {
    $('#submit-dialog').dialog('close');
},
$('#srch').click(function(e){
        var $dialogContent = $("#form");                

        $dialogContent.dialog({
            modal: true,
            title: "Test",
            close: function() {
               $dialogContent.dialog("destroy");
               $dialogContent.hide();
            },
            buttons: {
                save : function() {
                    $.ajax({
                        type: "GET",
                        url: "/cdr/abc.php",
                        cache: false,
                        data: $("#srch").serialize(),
                        timeout: 5000,
                        error: function (XMLHttpRequest, textStatus, errorThrown) { //ajaxSubmitError(XMLHttpRequest, textStatus, errorThrown); },
                        success: function (data) {                              
                            $dialogContent.dialog("close");
                        }
                    });
                },
                cancel : function() {
                    $dialogContent.dialog("close");
              }
           }
        }).show();
    e.preventDefault(); 
}