我需要让我的电子邮件和电话验证联系表格..那里的电子邮件代码,但它不正确,而不是正确的方式任何帮助! 我知道它需要它说:
if(email.length == 0 || email.indexOf('@') == '-1')
但是我现在确定如何做这个非常新的php,所以对我很容易:)
var error = false;
var name = $('#name').val();
var email = $('#email').val();
var subject = $('#subject').val();
var message = $('#message').val();
var tel = $('#tel').val();
// Form field validation
if(name.length == 0){
var error = true;
$('#name_error').fadeIn(500);
}else{
$('#name_error').fadeOut(500);
}
if(tel.length == 0){
var error = true;
$('#tel_error').fadeIn(500);
}else{
$('#tel_error').fadeOut(500);
}
if(email.length == 0 || email.indexOf('@') == '-1'){ **this is not the right way! help**
var error = true;
$('#email_error').fadeIn(500);
}else{
$('#email_error').fadeOut(500);
}
if(subject.length == 0){
var error = true;
$('#subject_error').fadeIn(500);
}else{
$('#subject_error').fadeOut(500);
}
if(message.length == 0){
var error = true;
$('#message_error').fadeIn(500);
}else{
$('#message_error').fadeOut(500);
}
if(tel.length == 0){
var error = true;
$('#tel_error').fadeIn(500);
}else{
$('#tel_error').fadeOut(500);
}
答案 0 :(得分:1)
电子邮件正则表达式:http://www.regexlib.com/Search.aspx?k=email
电话正则表达式:http://www.regexlib.com/Search.aspx?k=telephone
使用regex和jquery验证字段:https://stackoverflow.com/a/709358/2646455
所以你可以这样做:
$.validator.addMethod(
"regex",
function(value, element, regexp) {
var re = new RegExp(regexp);
return this.optional(element) || re.test(value);
},
"Please check your input."
);
$('#email').rules("add", { regex: "^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$" });
您可以跟随其他字段,也可以使用正则表达式(例如,用于电话)或其他基本的jquery验证。
P.S。您只需要调用$.validator.addMethod
一次,即可使用正则表达式验证选项。然后,为每个要应用于每个字段的验证规则调用最后一行(可以将多个验证规则应用于单个字段)。
答案 1 :(得分:0)
var atposition = email.indexOf("@"); //email = $('#email').val();
var dotposition = email.lastIndexOf(".");
if (atposition<1 || dotposition<atposition+2 || dotposition+2>=email.length)
{
//Invalid Email Code
}