Я пишу процедуру, которая проверяет ввод. он работает нормально, но когда я вводим символ, тогда он просто принимает. вот мой код.Проверка ввода по javascript
function isValidPhoneNumber(val) {
var flag = true;
var invalidChars = "[email protected]!$#";
if (flag) {
for (index = 0; index <= val.length - 1; index++) {
var phchars = val.substring(index, index + 1);
if (invalidChars.indexOf(phchars) > 0) {
flag = false;
break;
}
}
}
return flag;
}
Предположим, если я дал val = '+ 9122a5669974', тогда он вернется. индекс функции не может найти a .... почему. скажите, пожалуйста, что не так в рутине. если какой-либо признак, который существует в переменной invalidChars, тогда процедура должна возвращать значение false, но когда найденная тогда процедура возвращает true. помогите мне поймать ошибку. спасибо
использовать регулярные выражения VOR таких упражнений –
Для получения информации о регулярные выражения в JavaScript вы можете проверить здесь [https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions] и [здесь] (http://www.w3schools.com /jsref/jsref_obj_regexp.asp). Вы можете протестировать и иметь скрипку с ними на [RegExr] (http://gskinner.com/RegExr/), а w3schools имеет короткий набор [примеров] (http://www.w3schools.com/js/js_obj_regexp. asp), показывая вам, как их использовать. –