防止IE重复提交表单处理时,遇到的按钮操作有关问题

防止IE重复提交表单处理时,遇到的按钮操作问题
需求很简单,无非是防止用户频繁点击表单,以及ajax提交,不要给用户“点击之后,没有任何反应”的错觉。
因此在表单提交按钮点击之后,作如下效果:
按钮失效,背景变成灰色,并且在按钮后面加一个loading的小图标。

因为表单中还有一些非空字段的校验,所以上述效果的代码只有在校验全部通过的时候运行才是正常的。

起初我是在submit按钮上添加了一个,onclick事件,为了使这个按钮在提交时候失效,我添加了下面这一行代码
  $("#submit_button").attr("disabled","disabled");

火狐下面运行这个代码是没有任何问题的,后台的ajax提交也是很顺利,提交之后这个按钮变成灰色并且点击无效
但是IE下面是不行的,IE下面这样的代码只是按钮失效,并没有Ajax的后台提交

经过测试研究,最后发现是IE这个事件的执行顺序问题,把相关代码注册到form表单onsubmit事件上,即可在IE和狐火下面全部通过测试。