我现在有这个网站,并且给我带来了问题,因为我在网站上运行了两个表单,而jquery对验证感到困惑,因为它只是找到了INPUT,而且因为有两种形式它因为输入而出错在另一种形式中是空白的......
如何在jquery中选择特定输入而不是通用输入?
// Email Form
required = ["fullName" , "emailAddress"];
email = $("#emailAddress");
errornotice = $("#error");
emptyerror = "Required field.";
emailerror = "Enter a valid e-mail.";
$("#theformemail").submit(function(){
//Validate required fields
for (i=0;i<required.length;i++) {
var input = $('#'+required[i]);
if ((input.val() == "") || (input.val() == emptyerror)) {
input.addClass("needsfilled");
input.val(emptyerror);
} else {
input.removeClass("needsfilled");
}
}
// Validate the e-mail.
if (!/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(email.val())) {
email.addClass("needsfilled");
email.val(emailerror);
}
//if any inputs on the page have the class 'needsfilled' the form will not submit
if ($(":input").hasClass("needsfilled")) {
return false;
} else {
$("#newOne").show().delay(2000);
errornotice.hide();
return true;
}
});
??????? 这也是该网站的实际测试页面。
http://www.trento110.com/site/index.php
如果你点击 - 私人活动有一个表格..那么如果你点击“发送到手机上的电话......还有另一种形式,并注意到冲突。
提前致谢。
答案 0 :(得分:2)
请试试这个
$("#theformemail").submit(function(){
//Validate required fields
for (i=0;i<required.length;i++) {
var input = $('#'+required[i]);
//change this line with
var input =$(this).find('#'+required[i]);