我有一个用PHP动态生成的表单。
电子邮件有多个字段。我想在表单加载时预先填写数据时进行非常基本的电子邮件验证。需要突出显示包含格式错误的电子邮件的字段并禁用表单提交。
这是我到目前为止所拥有的,但我不确定如何让它全部工作。
.JS
function validateEmail(email) {
var emailReg = /^(['w-'.]+@(['w-]+'.)+['w-]{2,4})?$/;
return emailReg.test( email );
}
$("#mySubmitButton").click(function() {
var email = jQuery("input[name=''email[]'']").val();
if (!validateEmail(email)) {
event.preventDefault();
$(this).css("border","1px solid red");
alert("Bad email. Please correct before submitting.");
}
});
.PHP
$pairs = array_filter(explode(",", $_POST['email']));
foreach( $pairs as $pair ) {
$i++;
echo '<input type="text" name="email['.$i.']" value="'.$output['1'].'">
}
您可以像这样验证所有电子邮件
jQuery("input[type=text][name^=email]").each(function()
{
if(!validateEmail($(this).val()))
{
alert("Email not validated,");
//here you can figure out the invalid emails
}
});
var email = jQuery("input[type=text][name^=email]").val();
[name^=email]
将选择所有名为"以电子邮件开头">和"text
类型"的输入。
详情请看这里
在这里检查电子邮件验证