我在ajax表单提交中使用jQuery的checkValidity(),并且一切正常,直到表单具有select元素为止。

例如,我有一个页面,该页面根据用户对行数的选择显示数据。 (选择数据行数)... 10、20、30等。这是页面上的唯一形式。他们选择,并且在IE 9及以下版本的所有浏览器中都可以正常运行。

这是表单提交脚本中导致错误的行:

if (!$(this).get(0).checkValidity()) {return false;}


在IE中产生的错误是:


  SCRIPT438:对象不支持属性或方法“ checkValidity”


有人知道我该如何解决吗?在所有其他浏览器中都可以正常工作。

最佳答案

我正在使用jQuery的checkValidity() ...


checkValidity()不是jQuery方法,而是本机DOM API方法。您引用的代码...

if (!$(this).get(0).checkValidity()) {return false;


...获得对本机DOM元素的引用($(this).get(0)是多余的,可以简单地用this替换),然后在其上调用checkValidity()方法。

在IE9及以下版本中,此操作失败,因为他们尚未实现该方法。

关于javascript - checkValidity()在IE9及以下版本中导致错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15592827/

10-11 08:18