我拿着一个包含两个文本的表格,每个表格都涉及一组邮件。
<form name="myform" action= entryupdate.php method="post">
<textarea name="mailgroup1" rows="2" cols="50" onchange="checkFormValue();">
</textarea>
<textarea name="mailgroup2" rows="2" cols="50" onchange="checkFormValue();">
</textarea>
<input name="update" type="submit" value="Update description"/>
</form>
而且,我有责任根据我们的内部规范检查电子邮件是否格式良好。
function checkmail(component){
var emailpattern = /^[A-z0-9._-]+@[A-z0-9][A-z0-9-]*(.[A-z0-9_-]+)*.([A-z]{2,6})$/;
var mails = component.value.split(/[
]+/);
var valid = true;
for(var i=0; i<mails.length; i++){
valid = valid && emailpattern.test(mails[i]);
alert("Mail: "+mails[i]+" Valid: "+ emailpattern.test(mails[i]));
}
if(valid){
component.setAttribute( class , valid );
}else{
component.setAttribute( class , invalid );
}
return valid;
}
如果某个领域被归类为无效,则采用以下方式:
.invalid
{
background-color:#fffacd;
}
如果在文本中的一项修改了价值,则要求履行以下职能,即检查任何价值是否正确格式,如果情况是,提交纽伦残疾。
function checkFormValue(){
var validform = true;
validform = validform && checkmail(document.myform.mailgroup1) && checkmail(document.myform.mailgroup2);
document.hotfixomat.update.disabled = !validform;
}
问题是,如果第一次检查是假的,那么第二次检查就没有进行,如果发生价值没有正确格式的情况,那么这种改变就没有发生。 (但提交纽伦为残疾)。 为什么检查中断?