Чтобы ответить на ваш вопрос:
Включает функцию
Вы хотели бы использовать функцию .includes () , встроенную в javascript который возвращает логическое значение, если оно включено или нет. Если вам нужен строковый индекс каждого вхождения, вам нужно будет использовать a для l oop, как показано ниже.
var string = "+54 2453-2534-242";
for(int i = 0; i < string.length(); i++){
if(string.substr(i,1) === "-"){
console.log(i);
}
}
Включает функцию
Функция замены
Ниже приведен пример использования этой функции. Если вы используете sh, чтобы удалить эти или один из этих символов, вы можете использовать функцию .replace () или .split () и .join () функций.
const string = "+53 573-2566-242";
const character_1 = "+";
const character_2= "-";
// Includes
console.log(string + ".includes(+):", string.includes(character_1));
console.log(string + ".includes(-):",string.includes(character_2));
// Replace Singular
var new_string = string.replace(character_1,'');
console.log(new_string);
// Replace Multiple
var new_string2 = string.split(character_2).join("");
console.log(new_string2);
Replace Funtion
Если вы все еще застряли, не стесняйтесь комментировать
Редактировать
Для проверки наличия любых буквенно-цифровых c символов в строке. Вы можете просто использовать функцию .replace () и сравнить ее. Как показано ниже:
var string = "abc546"; // Your Phone Number Input
var string_converted = string.replace(/\D/g,'');
if(string !== string_converted){
console.log("Contains Characters that are not of type NUMBER!");
console.log(`${string} vs ${string_converted}`);
}
В вашем случае вы можете использовать следующий код:
$w.onReady(function () {
$w("#input1").onCustomValidation( (value, reject) => {
// Assuing *value* is your input
var converted = value.replace(/\D/g,'');
if(value !== converted){
// Regective Statment Here..
}else{
// All good! (No Alph-numeric Characters)
}
});
});