在下面的脚本中,我试图捕获验证引擎的成功事件(满足所有表单元素的验证标准),而不提交表单。
想法是禁用提交按钮,直到验证满足,然后我想启用它。 (我看过的validationEngine示例似乎需要启用提交按钮才能提交表单,然后在提交后验证)
但是,我无法在我的validate()函数中获取“有效”方法。我有什么想法吗?
$(document).ready(function() {
/* disable the submit button until required form elements are enabled */
$('#btnEcommidEdit').attr('class','button disabled');
$('#btnEcommidEdit').attr("disabled","disabled");
/* initiate validation */
$("#form1").validationEngine(
{
inlineValidation: true
});
/* check form elements to enable submit button */
$('#email2,#confirm1,#confirm2').change(function() {
validate();
});
});
function validate(){
var valid = $("#form1").validationEngine();
if (valid)
$("#btnEcommidEdit").attr('disabled','');
else
$("#btnEcommidEdit").attr("disabled","disabled");
}
答案 0 :(得分:1)
function validate(){
alert("validate");
var valid = $("#form1").validationEngine();
alert('Validation Engine returned : ' + valid);
if (valid == true) {
$("#btnEcommidEdit").prop("disabled",false);
$("#form1").submit();
} else {
$("#btnEcommidEdit").prop("disabled",true);
return false;
}
答案 1 :(得分:1)
使用此事件来捕获表单是否有效:
submitHandler: function (form) {
// for demo
if ($(form).valid()) {
// valid
} else {
//do some error handling
}
return false; // to not submit form
}
或简单使用$(form).valid()