Проверка формы; Получить все "input type = text" и проверить?
У меня есть форма, которая является динамической.
Это означает, что имена входов изменяются, а не одно и то же, но они все одинаковы "ТИП".
Поэтому мне нужно иметь javascript, который получает все input type = "text" и проверяет их. Это возможно?
Если да, то как?
Все, что мне нужно, чтобы проверить, чтобы они не были пустыми и что они только числовые.
Спасибо
Ответы
Ответ 1
Используйте document.querySelectorAll("input[type=text]")
, чтобы получить массив со всеми входами типа "текст". Вам нужно пройти через них и проверить.
Также обратите внимание, что вы, вероятно, захотите использовать что-то вроде #container_id input[type=text]
, чтобы убедиться, что вы не получите никаких узлов, которые вам не нужны.
Вот пример того, как должна выглядеть ваша проверка:
var nodes = document.querySelectorAll("#container_id input[type=text]");
for (var i=0; i<nodes.length; i++)
if (node.value == "" || !/[0-9.]+/.test(node.value))
return "invalid.";
return "valid";
Ответ 2
Что-то вроде этого:
var inp = document.getElementsByTagName('input');
for(var i in inp){
if(inp[i].type == "text"){
if(!/^\d{1,}$/.test(inp[i].value)){
alert('Invalid value detected');
inp[i].focus();
break;
}
}
}