【发布时间】:2013-08-01 16:50:33
【问题描述】:
无论是我还是 IE,但事实是 form.valid() 在 IE 中对我不起作用(在 Chrome/Firefox 中起作用)。我正在使用以下版本:
- jquery 1.8.3
- 验证插件 1.11.1
我有一个包含一个字段的简单表单,当我点击提交按钮时,验证触发并提示用户输入值并且此代码被触发“alert($(this).valid()); ”。用户输入值并单击提交按钮后,我运行了以下 jquery 代码:
$(function () {
$('form').submit(function () {
alert($(this).valid());
if ($(this).valid()) {
alert('Hello');
}
});
});
问题是没有任何警报被触发。我在这里做错了什么?我检查了验证插件文档,它说它确实支持我使用的 jquery 版本http://jqueryvalidation.org/
jQuery,用 1.6.4、1.7.2、1.8.3、1.9.0 测试
在开发者工具中我没有看到任何错误
*编辑***
此表单具有文件类型的输入(用于文件上传)。如果我评论/不显示它有效。所以我猜想如果你有文件输入你不能禁用提交按钮左右,则与 IE 安全有关。就我的两分钱!!!
【问题讨论】:
-
我不确定你想用上面的代码做什么,但如果你想在提交表单时做一些事情,你可以使用submitHandler钩子。
-
感谢您的回复!如果表单有效,我正在尝试禁用提交按钮。该代码适用于除 IE 之外的几乎所有浏览器。如果您看到上面的示例代码,则不会触发任何警报....
标签: jquery internet-explorer jquery-validate