use*_*679 1 javascript forms jquery
我checkValidity()在ajax表单提交中使用jQuery ,一切正常,直到表单有一个select元素.
例如,我有一个页面,根据用户对行数的选择显示数据.(选择多少行数据)... 10,20,30等.这是页面上唯一的表单.他们选择,除了IE 9及以下版本,所有浏览器都可以.
这是表单提交脚本中导致错误的行:
if (!$(this).get(0).checkValidity()) {return false;}
Run Code Online (Sandbox Code Playgroud)
IE中产生的错误是:
SCRIPT438:对象不支持属性或方法'checkValidity'
任何人都知道如何解决这个问题?适用于所有其他浏览器.
我正在使用jQuery的
checkValidity()......
checkValidity()不是jQuery方法,而是本机DOM API方法.你引用的代码......
if (!$(this).get(0).checkValidity()) {return false;
Run Code Online (Sandbox Code Playgroud)
...获取对本机DOM元素的引用(并且$(this).get(0)是多余的,可以简单地替换this),然后checkValidity()在其上调用方法.
它在IE9及以下版本中失败,因为它们没有实现该方法.