我有一个问题,我正在做一个简单的表单验证,需要一些验证插件无法为我做的自定义内容。
$("#contactMe form").submit(function() {
var email = $('.requiredEmail').val();
if(email != 0) {
if(isValidEmailAddress(email)) {
$('.requiredText').each(function() {
thisVal = $(this).val();
var $this = $(this);
if(thisVal != 0) {
console.log('Valid Field: '+thisVal);
if ($(this) == $(this).parent(':last')) {
console.log('Last field, submit form here');
}
}
});
} else {
console.log('Email Not Valid');
}
}
return false;
});
只是为了解释一下,我首先通过 isValidEmailAddress 函数检查电子邮件地址是否有效,该函数正在运行。
if ($(this) == $(this).parent(':last')) {
我所拥有的显然是不正确的,但我不确定可以用什么来检查它是否是每个结果集中的最后一个,如果为真则执行操作。
有人可以帮我吗?
提前致谢。
答案
each
传递到你的函数中index
和element
。index
对照集合的长度,你就可以开始了:
var set = $('.requiredText');
var length = set.length;
set.each(function(index, element) {
thisVal = $(this).val();
if(parseInt(thisVal) !== 0) {
console.log('Valid Field: ' + thisVal);
if (index === (length - 1)) {
console.log('Last field, submit form here');
}
}
});