0

这是我的第一个网页,我在其中提示用户输入电话号码以添加到“请勿呼叫列表”数据库。到目前为止一切正常,但我需要添加以下内容,我可以按照此答案中的建议进行操作

  • 去除除数字以外的所有字符的输入
  • 验证结果字符串的长度为 10 位

然后,当告诉用户该号码已添加到列表中时,我想以 (999) 999-9999 格式显示它。

我应该在哪里添加所有这些代码?在@{ }街区之外?在 JavaScript 中?剃刀?

4

1 回答 1

1

检查电话号码

function IsNumber(s) {
    var i, currentCharacter;
    for (i = 0; i < s.length; i++) {
        // Check that current character is number.
        currentCharacter = s.charAt(i);
        if (((currentCharacter < "0") || (currentCharacter > "9"))) {
            return false;
        }
    }
    // All characters are numbers.
    return true;
}

function TestInternationalPhone(strPhone) {
    var bracket = 3,
    openBracket,
    phoneNumberOnly,
    phoneNumberDelimiters = "()- ",
    validWorldPhoneChars = phoneNumberDelimiters + "+",
    minDigitsInIPhoneNumber = 10;

    strPhone = SOS.StringHelper.Trim(strPhone);
    if (strPhone.length === 0) {
        return false;
    }
    if (strPhone.indexOf("+") > 1) {
        return false;
    }
    if (strPhone.indexOf("-") != -1) {
        bracket = bracket + 1;
    }
    if (strPhone.indexOf("(") != -1 && strPhone.indexOf("(") > bracket) {
        return false;
    }
    openBracket = strPhone.indexOf("(");
    if (strPhone.indexOf("(") != -1 && strPhone.charAt(openBracket + 2) != ")") {
        return false;
    }
    if (strPhone.indexOf("(") == -1 && strPhone.indexOf(")") != -1) {
        return false;
    }
    phoneNumberOnly = SOS.StringHelper.StripCharsInBag(strPhone, validWorldPhoneChars);
    return (IsNumber(phoneNumberOnly) && phoneNumberOnly.length >= minDigitsInIPhoneNumber);
}
于 2013-01-17T04:06:59.077 回答