我正在使用带有 jQuery Validate 的 jQuery Mobile。完成所有页面后,我有多个使用 ajax 序列化发布的表单。
从本机浏览器访问时,下面的“下一步”按钮适用于 iOS 和 Android。当我使用 PhoneGap 打包并在 Android 上运行时,验证不会触发。其他一切正常。
如果我删除了 valid() 条件,该按钮将按预期工作。所以这一定是我如何使用 jQuery Validate 的问题。
我尝试过以各种方式改变事物的顺序。我试过了:
if (!$("#infofm").valid()) {
和
if($("#infofm").valid()) {
总是相同的结果 - 在本机浏览器中工作,但不是在 PhoneGap 之后。我已经为此苦苦挣扎了很长时间。这是相关的代码。任何帮助将不胜感激。谢谢!
$(function(){
$('a#nxt1').bind('click', function(event, ui) {
infoval();
});
function infoval(){
var isvalidate=$("#infofm").valid();
if(isvalidate) {
$.mobile.changePage('#towertop', {transition: 'slidefade'});
} else {
alert("Please fill in all fields on this page before proceding");
}
};
$(document).ready( function(){
$("#infofm").validate({ errorPlacement: function(error, element) {} }); });
和
<a href="" id="nxt1" data-iconpos="bottom" data-theme="a" data-icon="arrow-r">Next Step</a>