我有一个用bassistance validate plugin验证的表单。这一切都很好(顺便说一下很棒的插件)但是我想禁用提交按钮,直到表单有效。
根据作者JörnZaefferer(read comment here)的说法,我必须跟踪所有字段的有效性,然后启用按钮。
所以我假设我首先必须找到我所有的字段,其名称为'required',然后检查它们是否也有一个'valid'类,然后最后启用按钮...但我真的努力做到这一点(我已经花了3.5个小时,这让我发疯了!)
我尝试使用proposed here的计时器技术绑定输入字段以监听“有效”类,并提出以下内容:
function doneTyping () {
var requiredFields = $('input').hasClass('required');
$(requiredFields).each(function(){
if ($(this).hasClass('valid')){
console.log('form is valid, enable button here');
} else {
console.log('form is not valid yet');
}
});
}
但是我的代码不起作用...有人可以告诉我,我是否朝着正确的方向前进?
答案 0 :(得分:2)
function doneTyping () {
var requiredFields = $('input.required');
if ($("input.required:not(:valid)").length){
console.log('form is not valid, disable button here');
} else {
console.log('form is valid ');
}
}
答案 1 :(得分:0)
根据你的插件
,您可以使用以下想法检查表单是否有效alert (($("#Form1").validationEngine('validate')));
这将为您提供真值或假值,并根据您可以显示或隐藏按钮。
最初使用以下方式隐藏按钮:
$(document).ready(function()
{
$("#ButtonSubmit).hide();
}