Хорошо, чтобы сделать то, что вы просите:
if (stripped.length != 10 && stripped.length != 11) {
alert("Please enter a valid US phone number.")
return false
}
Тем не менее, вы можете рассмотреть возможность использования регулярных выражений для проверки телефонных номеров, поскольку они могут легко проверять большое количество условий.
Заимствование у RegEx Buddy (что я настоятельно рекомендую, поскольку оно поможет вам анализировать и понимать регулярные выражения):
var phoneRegex = /\(?\b[0-9]{3}\)?[-. ]?[0-9]{3}[-. ]?[0-9]{4}\b/;
var phone = '3334445555';
if(!phone.match(phoneRegex)){
alert('please enter a valid phone number');
}
Совпадения 3334445555, 333.444.5555, 333-444-5555, 333 444 5555, (333) 444 5555 и все их комбинации.
EDIT
@ pawel делает хорошее замечание. Лучший способ проверить это сначала удалить все символы, кроме цифр. Затем убедитесь, что у вас есть правильное количество цифр, затем сохраните этот раздельный, единый номер на сервере. Регулярное выражение идеально подходит только для поиска действительных телефонных номеров, которые скрываются в большем блоке текста. Это действительно не разумный выбор для этого ... упс:)