如果用户在javascript中输入了未启动22或27或06等的数字,我喜欢显示错误。
这是我的代码..
<!DOCTYPE>
<HTML>
<form name="form" action="action.php" method="post" onsubmit="return validate()">
<span>Mobile Number(Required)</span>
<input type ="integer" name="contact" id ="contact"
value="+639" maxlength="13"/> <label id ="errorEight"></label>
<label id ="errorAlphaFour"></label>
<label id ="errorMinThree"></label><br>
</HTML>
<javascript>
function validate()
{
var valid = true;
var numeric =/^[0-9+]+$/;
if(contact.value=="")
{
document.getElementById('errorEight').innerHTML="*Field is empty";
document.getElementById('errorAlphaFour').innerHTML="";
document.getElementById('errorMinThree').innerHTML="";
valid=false;
}
else if(contact.value!="" && contact.value.match(numeric))
{
document.getElementById('errorEight').innerHTML="";
document.getElementById('errorAlphaFour').innerHTML="";
document.getElementById('errorMinThree').innerHTML="";
}
else
{
document.getElementById('errorAlphaFour').innerHTML="*Invalid number";
document.getElementById('errorEight').innerHTML="";
document.getElementById('errorMinThree').innerHTML="";
valid = false;
}
if(contact!="" && contact.value.match(numeric) && contact.value.length<13)
{
document.getElementById('errorAlphaThree').innerHTML="";
document.getElementById('errorTwo').innerHTML="";
document.getElementById('errorMinThree').innerHTML="*Minimum of 13 digits";
valid=false;
}
else
{
}
if(contact.value=="")
{
document.getElementById('errorEight').innerHTML="*Field is empty";
valid = false;
}
else
{
}
}
</javascript>
如果用户输入的数字不是以27或22或06等开头,我需要添加到我的代码中才能显示错误。
答案 0 :(得分:0)
您需要做的是使用正则表达式执行简单的匹配测试。
var regex = '/^22[0-9]*$|27[0-9]*$|06[0-9]*$/g';
if (contact.match(regex) == null)
{
// Error display
// Instructions....
}
希望它有所帮助,
注意:如果您可以在发布之前检查您的拼写和语法,这将有助于我们帮助您!