现在我尝试使用功能" onblur "使用输入文本中的 javacript 。
警报消息检查正常。
但是当身份证错误时如何清除输入文字(警告后将其设为空值" 错误的身份证")
并在身份证正确时保持价值。
任何人都可以帮助我。非常感谢你。
这是我的代码
function checkID(id)
{
if(id.length != 13) return false;
for(i=0, sum=0; i < 12; i++)
sum += parseFloat(id.charAt(i))*(13-i); if((11-sum%11)%10!=parseFloat(id.charAt(12)))
return false; return true;}
function checkForm()
{ if(!checkID(document.idform.idcard.value))
alert('Wrong ID Card');
document.idform.idcard.value = "";
}
&#13;
<form name="idform">
ID Card Check: <input type="text" name="idcard" maxlength="13" onblur="checkForm();" />
</form>
<br>
<p>(Correct ID Card = 1100701342240 ) </p>
&#13;
答案 0 :(得分:0)
有效。当您按警告消息上的确定按钮时,输入字段将清除。你需要在checkForm
函数
function checkForm(){
if(!checkID(document.idform.idcard.value)){
alert('Wrong ID Card');
document.idform.idcard.value = "";
}
}
&#13;
答案 1 :(得分:0)
最后,我可以解决它。感谢您的每一条评论:)
function checkID(id)
{
if(id.length != 13) return false;
for(i=0, sum=0; i < 12; i++)
sum += parseFloat(id.charAt(i))*(13-i); if((11-sum%11)%10!=parseFloat(id.charAt(12)))
return false; return true;}
function checkForm()
{ if(checkID(document.idform.idcard.value))
return true;
else alert('Wrong ID Card');
document.idform.idcard.value = "";
}
<form name="idform">
ID Card Check: <input type="text" name="idcard" maxlength="13" onchange="checkForm();" required/>
</form>
<br>
<p>Test with one in a million of Correct ID : 1100701342240 </p> <p>If put another random ID it will alert "Wrong ID" </p>