Проверка текста в input
Помогите реализовать следующее:
Есть форма с полем <input name="name" type="text" id="name" value="" /> Можно ли как то сделать так: Подсчитать сколько запятых в поле и если их меньше 10 тогда показывает окошко с сообщением? |
if (value.split(',').length < 8) { // show popup } |
<!DOCTYPE HTML> <html> <head> </head> <body> <input type="text"> <input type="button" value="go"> <script> var inp = document.body.children[0]; var bt = document.body.children[1] bt.onclick = function () { var value = inp.value; value = value.match(/,/g); if(value && value.length >= 10) return; alert("Запятых меньше 10"); } </script> </body> </html> |
cyber,
рекулярка то накой? |
Цитата:
56765,6757657 ваш код вернет такой массив ["56765", "6757657"] <!DOCTYPE HTML> <html> <head> </head> <body> <input type="text" value="2312,21312,123"> <input type="button" value="go"> <script> var inp = document.body.children[0]; var bt = document.body.children[1] ; alert(inp.value.split(",").length); bt.onclick = function () { alert(inp.value.split(",").length); } </script> </body> </html> |
cyber,
да неужели. А я думал массив из запятых. Это делается так: var MY_MAGIC_NUMBER = 10; if (value.split(',').length < (MY_MAGIC_NUMBER + 1)) { // show popup } |
Цитата:
http://javascript.ru/String/split Цитата:
|
cyber,
сарказм, не? В код посмотрите. |
Nekromancer,
и? я вижу строку в value которую метод split разбивает по зяпятыми, а про этот мараз я вообще промолчу if (value.split(',').length < (MY_MAGIC_NUMBER + 1)) так как в моему случае записуеться в массив 10 запятых , а вашем все кроме запятых, а +1 для того что бы 100% "супер" код получился? что бы закончить флуд , пример ниже все прекрасно доказывает! <!DOCTYPE HTML> <html> <head> </head> <body> <input value="111,222,333,444"> <script> var input = document.body.children[0]; var value = input.value; alert("Мой вариант: "+value.match(/,/g)); alert("Ваш вариант: "+value.split(",")) </script> </body> </html> |
cyber,
Что он доказывает? Что надо поднимать регулярки для поиска запятых? |
Часовой пояс GMT +3, время: 05:20. |