0

对于这个特定的现有表单,有一个接受电话号码的输入。它已经验证只接受数字并为 10 个字符添加了最大字符属性。

但是有人可以添加 1-9 位数字。所以我需要添加 javascript 来检查以确保该字段的字符数为 10。输入的 ID 为电话号码。

有人可以告诉我如何修改以下代码以使其正常工作吗?注意:“= 10 个字符”只是一个占位符,该部分需要用真实代码替换。

function checkEmail(theForm) {
    if (theForm.getElementById("phonenumber").value = 10 Characters )
    {
        alert('Your phone number is not 10 digits.');
        return false;
    } else {
        return true;
    }
}
4

5 回答 5

1

我想你想要.length

if (theForm.getElementById("phonenumber").value.length == 10) { 
于 2012-05-07T17:17:47.973 回答
1

您可能希望对您的用户温和,并允许电话号码中的常见约定,如空格或连字符。

只需检查 10 位数字。使用该值时,请删除所有非数字。

function checkphone(v){
    if(v.match(/\d/g).length==10) return true;
    throw 'Phone number must have 10 digits';
}

检查电话('207 555-5555');

于 2012-05-07T17:34:53.747 回答
0

if (theForm.getElementById("phonenumber").value.length != 10)

...因为如果长度不是10 ,您希望发生一些事情。

于 2012-05-07T17:21:38.953 回答
0

使用Javascript 验证验证电话号码字段的最小和最大长度

function checkLimit() {
    var x, text;

    // Get the value of the input field with id="Phone"
    phone = document.getElementById("Phone").value;

    // If phone is Not a Number or less than 10 or greater than 10
    if (isNaN(phone) || phone.length < 10 || phone.length > 10) {
        text = "Input not valid";
    } else {
        text = "Input OK";
    }
    document.getElementById("resp").innerHTML = text;
}
    <input onkeypress="checkLimit()" id="Phone" name="Phone" type="number" class="form-control" placeholder="Phone Number" required="required"/>
    
    <p id="resp"></p>

于 2017-08-24T04:56:33.877 回答
-1

试试这个:

function checkEmail(theForm) {
if (theForm.getElementById("phonenumber").value.length != 10 )
{
    alert('Your phone number is not 10 digits.');
    return false;
} else {
    return true;
}

}

于 2012-05-07T17:20:22.247 回答