[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Валидатор формы
Игорь_Vasinsky
Вообщем есть инпут с id="name"

Пытаюсь проверить на соответствие value

       var expr = new RegExp('/[a-z]+/ig');

alert(expr.exec(document.getElementById('name').value));


какой бы я паттерн не использовал - всё врема NULL

может я не правильно этот момент понял...



Спустя 16 минут, 2 секунды (3.11.2011 - 20:18) sebastjan написал(а):
кажись надо обращатся
document.имя_формы.имя_поля.value;


а у тебя сразу document и имя поля

Спустя 1 минута, 42 секунды (3.11.2011 - 20:20) sergeiss написал(а):
А просто выведи для начала document.getElementById('name').value - выдаст что?

Спустя 49 секунд (3.11.2011 - 20:21) sergeiss написал(а):
Цитата (sebastjan @ 3.11.2011 - 21:18)
кажись надо обращатся....

Вовсе не обязательно.

Спустя 48 секунд (3.11.2011 - 20:22) sebastjan написал(а):
Цитата (sergeiss @ 3.11.2011 - 17:20)
А просто выведи для начала document.getElementById('name').value - выдаст что?

по идеи не должно, должна быть последовательность обращения.

Цитата

То есть сначала обращаемся к объекту Document, затем к его свойству Form (через имя формы), потом к имени поля данной формы, и, наконец, к значению поля.

Спустя 1 минута, 27 секунд (3.11.2011 - 20:23) Игорь_Vasinsky написал(а):
Цитата
А просто выведи для начала document.getElementById('name').value - выдаст что?


ну я в value набил ljlkjlk;jk;j

это и получил в алерте


Спустя 2 минуты, 23 секунды (3.11.2011 - 20:25) sebastjan написал(а):
А так не поробовал ?
alert(expr.exec(document.ИМЯ_ФОРМЫ.getElementById('name').value));

Спустя 1 минута, 2 секунды (3.11.2011 - 20:27) Winston написал(а):
<input type="text" id="name" value="hello">
<
script type="text/javascript">
var str = document.getElementById('name').value;
if(/[a-z]+/ig.exec(str))
alert('OK');
else
alert('BAD');
</
script>

Результат OK

Спустя 4 минуты, 6 секунд (3.11.2011 - 20:31) sebastjan написал(а):
Наверное надо следвать правилу последовательности если на сайте несколько форм с одинаковыми АйДи.
Хотя лучше сразу писать учитывая ирархию документа.
Это моё мнение.

Спустя 1 минута, 50 секунд (3.11.2011 - 20:32) Winston написал(а):
Вот можно потестить мой пример
http://jsfiddle.net/3tchZ/

Спустя 36 секунд (3.11.2011 - 20:33) Игорь_Vasinsky написал(а):
sebastjan
Цитата
Uncaught TypeError: Object #<HTMLFormElement> has no method 'getElementById'


Winston
ща проверю...

Спустя 4 минуты, 13 секунд (3.11.2011 - 20:37) sebastjan написал(а):
я пас, тут яваквери.
Говорю о чистом яваскрипт.

Спустя 54 секунды (3.11.2011 - 20:38) Winston написал(а):
Цитата (sebastjan @ 3.11.2011 - 19:37)
я пас, тут яваквери.

Где здесь яваквери? blink.gif

Спустя 5 минут, 58 секунд (3.11.2011 - 20:44) Игорь_Vasinsky написал(а):
Winston
блин.. карму вчерась тока тебе добавлял. за мной должок. wink.gif

sebastjan

как это ты разнюхал dry.gif чистый JS в JQ тоже работает.

Спустя 1 минута, 27 секунд (3.11.2011 - 20:46) sebastjan написал(а):
а мне так подумалось biggrin.gif
Не буду флудить, ошибался, не применял на практике проверку с яваскрипт regexp.exec(str)

вот смотрю на синтаксис по хелпу var result1 = regexp.exec(str)

какая то несуразица написанна

если писать в поле формы что то - надо обращаться последовательно к документу,
если проверять - то получается не надо.
Не понимаю логики. sad.gif

Спустя 5 минут, 46 секунд (3.11.2011 - 20:51) Winston написал(а):
Цитата (Игорь_Vasinsky @ 3.11.2011 - 19:44)
как это ты разнюхал  чистый JS в JQ тоже работает

Только узнал, что ли ? blink.gif

Спустя 23 минуты, 13 секунд (3.11.2011 - 21:15) sebastjan написал(а):
Всё разобрался ,всё дело в Метод getElementById который сразу обращвется к Айди.
Ступил, спасибо Winston

Спустя 41 минута, 6 секунд (3.11.2011 - 21:56) killer8080 написал(а):
Цитата (Игорь_Vasinsky @ 3.11.2011 - 20:02)
Пытаюсь проверить на соответствие value

var expr = new RegExp('/[a-z]+/ig');

alert(expr.exec(document.getElementById('name').value));


какой бы я паттерн не использовал - всё врема NULL

А что ты хотел увидеть в алерте?

Вообще если нужно просто проверить соответсвие шаблону, то лучше использовать test, а не exec


И да, там у тебя ошибка, нужно было так
var expr = new RegExp('[a-z]+', 'ig');


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.