读取底部的编辑2
原始员额:
我有这个jQuery验证器方法来检查有效的YYYY DD日期:
$.validator.addMethod("myDate", function(value, element){
var validformat = /^\d\d\d\d\-(0[1-9]|1[012])\-(0[1-9]|[12][0-9]|3[01])$/;
return validformat.test(value);
}, "Please enter a valid YYYY-MM-DD date");它在我的计算机上运行良好--在预期时返回false,在预期时返回true。然而,在我的Android手机上,它总是返回false -输入总是写着“请输入一个有效的YYYY DD日期”,即使这个日期是有效的。
是否有像.test()这样的regex方法在Android (可能还有其他手机)上有不同的工作方式,或者这是jQuery Validator的错误吗?
编辑:我尝试过用同样的结果将validformat.test(value)改为value.match(validformat) --在计算机上工作,而不是在电话上工作。
编辑2: Ok,甚至在方法中注释其他所有内容,并键入return true;,仍然会在我的手机上产生错误。绝对是jQuery验证器问题。不过,需要一个解决办法!
发布于 2013-01-05 01:56:06
我刚查过一部安卓2.3手机。它工作得很完美。
因此,我只把它归咎于Android2.2。这是我的小解决办法:
$("#myform").validate({
...
<?php
//only print out the rule into the JS if it's not Android 2.2
if(!strpos($_SERVER['HTTP_USER_AGENT'], "Android 2.2"))
print "myDate: true, \n";
?>烦人的黑客:)
https://stackoverflow.com/questions/14165859
复制相似问题