我正在用 JavaScript 进行客户端验证。我可以对必填字段和电话号码字段进行验证,但除了电子邮件字段之外,所有其他字段都接受空格,以便验证通过并创建新的数据行。如何使用 JavaScript 在我的代码中包含空格验证?
JavaScript:
function form_validate(){
var error = 0;
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
$('#form input[type=text]').each(function(n,element){
$(this).removeClass('warning');
if ($(element).val()=='') {
$("#warning td").text("All fields are mandatory.");
$(this).addClass('warning');
$("#warning").show();
error++;
}else if($(element).attr('name')=='email'){
if (!emailReg.test($(element).val())){
$("#warning td").text("Enter a valid email address.");
$(this).addClass('warning');
$("#warning").show();
error++;
}
}else if(($(element).attr('name')=='phone' || $(element).attr('name')=='mobile') && error==0){
if (isNaN($(element).val())){
$("#warning td").text("Enter valid phone number.");
$(this).addClass('warning');
$("#warning").show();
error++;
}
}
});
if(error){
return false;
}else{
return true;
}
}
HTML
<table width="100%">
<tr>
<td style="width:100px;">First name:</td><td><input type="text" name="first_name" id="first_name" maxlength="20"/></td>
</tr>
<tr>
<td style="width:100px;">Last name:</td><td><input type="text" name="last_name" id="last_name" maxlength="20"/></td>
</tr>
<tr>
<td>Email:</td><td><input type="text" name="email" maxlength="36" id="email"/></td>
</tr>
<tr>
<td>Daytime phone:</td><td><input type="text" name="phone" maxlength="15" id="phone_no" /></td>
</tr>
<tr>
<td>Mobile phone:</td><td><input type="text" name="mobile" maxlength="15" id="mobile" /></td>
</tr>
<tr style="display:none;color:red" id="warning">
<td colspan="2" align="center" >All fields are mandatory</td>
</tr>
</table>