jquery - 如何防止 jQuery BlockUI 触发

标签 jquery forms onsubmit jquery-blockui

我做了jQuery BlockUI Plugin在每个表单提交操作上触发:

$("form").submit(function() {
    jQuery.blockUI();
});

我想在提交之前验证一些表单:

<form method="POST" onSubmit="return(confirm('Really submit?'));">

当我在确认弹出框中点击“取消”时,BlockUI 被触发并阻止界面。它永远不会被解锁。
这是一个示例:http://jsfiddle.net/8B8yA/ .

问题是如何防止在按下“取消”时触发 BlockUI。

我尝试将 $.unblockUI() 添加到“取消”操作:

if(!confirm("Really submit?")) {
    $.unblockUI();
    return(false);
}

但它显然不起作用,因为解锁操作是在阻止操作之前调用的。

最佳答案

怎么样:

$("form").submit(function() {
    if(!$(this).hasClass('skip'))
    jQuery.blockUI();
});​

<html>
  <head>
    <script src="http://malsup.github.com/jquery.blockUI.js">
    </script>
  </head>
  <body>
    <form method="POST" onSubmit="return (function(form) { var c = confirm('Are you sure?'); if(!c) { $(form).addClass('skip'); } return c; })(this);">
      <input type="submit">
    </form>
  </body>
<html>​

参见:http://jsfiddle.net/8B8yA/5/

关于jquery - 如何防止 jQuery BlockUI 触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10753584/

相关文章:

html - 如果同一个表单上有多个提交按钮,如何使用 onsubmit() 来显示确认?

Javascript:firstChild对象返回未定义

javascript - 悬停时的 Jquery 幻灯片动画

php - 一种表单中的常规按钮和提交按钮不起作用

javascript - 更高效的 jquery 账单估算器

javascript - Onsubmit 函数在 Safari 上触发,即使所需的输入为空

php - 无法使用 onSubmit 属性触发的 Ajax 响应阻止表单提交。

php - 无法使用 jQuery 正确访问复杂的 json 对象

javascript - 在选中复选框时显示/隐藏复选框

javascript - 如何检测用户何时在输入类型数字中键入字符串?