通过代码更新jquery ui不会在提交表单时触发

时间:2012-07-24 17:50:12

标签: jquery forms html submit loading

我有一个加载div,显示在不同的服务器调用之间。 这是代码:

$("#submitButton").click(function () {
        $("#loadingDiv").show();
        $(this).attr("disabled", "disabled");
        $("form:first").submit();                        
    });

如果我注释掉提交表单的第三行代码,这一切都很有效。但是当我把代码提交到这些ui更新调用旁边的表单时,它们都没有生效,浏览器等待光标显示,直到显示表单提交的结果。

2 个答案:

答案 0 :(得分:1)

您需要添加preventDefault()以防止发生默认提交。正如您所拥有的那样,表单将在任何单击处理程序代码运行之前提交。

$("#submitButton").click(function (e) { // note event object passed in
    e.preventDefault(); // add this
    $("#loadingDiv").show();
    $(this).attr("disabled", "disabled");
    $("form:first").submit();                        
});

答案 1 :(得分:0)

当您提交表单时,页面将被重新加载或重定向到另一个地方,我想您想要使用AJAX,如果是这种情况,您可能需要查看ajax()post()方法并使用它们而不是提交表格。