【发布时间】:2011-04-29 17:46:40
【问题描述】:
我有一个问题,我正在做一个简单的表单验证,需要一些自定义的东西,验证插件无法为我做。基本上,我有一个姓名,电子邮件和消息字段,都是必需的,但只有电子邮件是真正验证的,其他只需要检查它们是否不为空。这是我当前的代码:
$("#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 函数检查电子邮件地址是否有效,该函数正在运行。然后我将使用 each(),所有 requiredText 字段并检查它们是否不为空。当我到达最后一个 requiredText 字段时,我想使用 post 或其他方式提交表单。
if ($(this) == $(this).parent(':last')) { 我所拥有的显然不正确,但我不确定可以使用什么来检查它是否是每个结果集中的最后一个,如果为真则执行操作。
有人可以帮我吗?
提前致谢。
【问题讨论】:
-
is requiredText 是所有输入文本框的类名吗?如果是这样,您的 id 也可能是正确的,为什么不简单地使用 id 验证最后一个元素,然后提交表单。