使用jquery将事件附加到表单提交

时间:2013-04-18 14:55:43

标签: jquery

我们有一个大型应用程序,大约有100个jsp页面。当我们提交表单(使用javascript)时,光标不会改变。有没有办法动态拦截表单提交并使用jquery更改游标?不幸的是,使用命名形式的选择器可能是不可能的;此外,希望通过将其包含在一个公共的js文件中来保持所有表单的通用功能。

我尝试了以下代码,但没有奏效。有没有办法让选择器类似于我在下面尝试的选择?

function cursorwait(e) {
    document.body.className = 'wait';
}

$(function () {
    var jspform = $('form');
    var fmsubmit = jspform.onsubmit;

    jspform.onsubmit = function () {
        cursorwait();
        if (fmsubmit) {
            fmsubmit.call(jspform);
        }
    }
});

1 个答案:

答案 0 :(得分:3)

$('form').submit(function(){
  document.style.cursor = 'wait';
});

非常原始,但我认为能够满足你的要求。

后续:

  • .submit()是jQuery提供的事件活页夹(因此无需尝试使用onsubmit并且符合跨浏览器标准)
  • 这只是“添加功能”提交 - 它不会干扰,拒绝或以其他方式阻止表单提交(例如使用客户端验证和表单失败) - 这将需要额外的逻辑来处理这种情况
  • 我将光标样式应用于整个文档,但您可以在同一代码块中轻松添加正文类。