我正在运行验证功能onclick。当您最初点击按钮时,它会遍历每个字段并确保验证是否良好。它目前只通过控制台告诉我有多少错误,或者是否没有错误。
它第一次运作!但是,当我修复错误并再次单击该按钮时,它仍然表示在修复之前存在错误。
我的问题是,有没有办法让按钮重新计数或“刷新”?这是我的代码
function moveOn(){
if (errors > 0) {
console.log(errors);
} else if(errors === 0){
console.log("no errors!");
}
};
这是代码的其余部分
var errors = 0;
function validate(){
$(".validName").each(function() {
var val = $(this).val();
var minLength = defaultMinNameLength
//check data-min-length if exists then
// min length = thatValue
if (validateName(val) && validateLength(val,minLength)){
inlineValidate(this, { '.error': 'hide', '.correct': 'fadeIn', '.incorrect': 'hide' },"#ccc");
} else {
errors++;
inlineValidate(this, { '.error': 'fadeIn', '.correct': 'hide', '.incorrect': 'fadeIn' }, "#ff9999");
}
});
$(".validLetNum").each(function() {
var val = $(this).val();
var minLength = defaultMinNameLength
if (validateLetterNum(val) && validateLength(val,minLength)){
inlineValidate(this, { '.error': 'hide', '.correct': 'fadeIn', '.incorrect': 'hide' },"#ccc");
} else {
errors++;
inlineValidate(this, { '.error': 'fadeIn', '.correct': 'hide', '.incorrect': 'fadeIn' }, "#ff9999");
}
});
$(".validEmail").each(function() {
var val = $(this).val();
var minLength = defaultMinNameLength
if (validateEmail(val) && validateLength(val,minLength)){
inlineValidate(this, { '.error': 'hide', '.correct': 'fadeIn', '.incorrect': 'hide' },"#ccc");
} else {
errors++;
inlineValidate(this, { '.error': 'fadeIn', '.correct': 'hide', '.incorrect': 'fadeIn' }, "#ff9999");
}
});
// console.log(errors);
};
function moveOn(){
if (errors > 0) {
console.log(errors);
} else if(errors === 0){
console.log("no errors!");
}
};
答案 0 :(得分:0)
function moveOn(){
if (errors > 0) {
// Correct errors
errors = 0;
} else if(errors === 0){
console.log("no errors!");
}
};
答案 1 :(得分:0)
您可以可能通过更改以下内容来解决问题:
var errors = 0;
function validate(){
要:
var errors;
function validate() {
errors = 0;
注意:从您的代码中,您不清楚如何致电moveOn()
(甚至是您致电validate()
的乳清),因此我无法自信地确认上述内容应该可以解决您的问题问题。
<强>注意强>
errors
的变量,那么将该变量传递给第二个函数,或者这可能表明你的两个函数应合并为一个。onclick
属性,最好利用jQuery的强大功能,并将click
事件绑定到元素上。