Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Валидация формы (https://javascript.ru/forum/project/23606-validaciya-formy.html)

ваый 01.12.2011 21:35

Цитата:

Сообщение от trikadin
mustHave

:lol: чувство юмора есть. Это как один мой коллега выводил сообщение об ошибке на форме регистрации: "This email is busy, please choose another one".

Цитата:

Сообщение от Mightyraven
поэтому делать скрипт более универсалоьным нет смысла.

Ну это ты зря.. Сейчас скрипт абсолютно неприменим к другим формам без необходимости существенных модификаций. Тот факт, что тебе надо
Цитата:

создать переменные-объекты из этих полей в JS
в)добавить правила для нового поля в JS регулярным выражением
уже автоматом делает скрипт не универсальным. Для начала отлично, но можно попробовать написать скрипт, который бы был действительно универсальным, была бы для тебя отличная практика. Скажем функция принимает в себя два аргумента, ссылка на элемент формы и конфигурационный объект, в котором объявлены правила валидации. Вот это было бы уже новый уровень.

trikadin 01.12.2011 21:36

Цитата:

Сообщение от Mightyraven
Спасибо. в исходнике уже перебил.

Про mustHave - это шутка была... Это английская идиома, означает "должен иметь" (дословно). А по сути - так говорят о чём-то, что необходимо каждому.

trikadin 01.12.2011 21:37

Цитата:

Сообщение от ваый
Это как один мой коллега выводил сообщение об ошибке на форме регистрации: "This is email is busy, please choose another one".

:)

Вашего сообщения ещё не было, когда я писал, ваый)

Mightyraven 01.12.2011 22:14

trikadin,
Я понял шутку... Я заменил inputSait на inputURL

Mightyraven 01.12.2011 22:30

ваый,
я не говорил что он универсальный.. Я сказал что универсальность и громоздкость по середине, как я считаю.
да и как можно прописать все регул выражения для проверки полей? мало ли какое поле захотят вогнать? например чтобы содержало слово "УФ"!!!
как это предусмотреть? так что рег выражения по любому придется добавлять в ручную в скрипт. как не крути.
и поля в Хтмл, придется все равно добавлять в ручную.
Что и делается в моем случае.
что же касается чтобы скрипт сам инициализировал все поля формы и давал им имена считал количество. В принципе возможно. но увеличит код. Я считаю это не оправданным. к тому жевсе равно придется привязывать к каким то полям обязательность заполнения и рег выражения в ручную.
Привязка автоматом возможна лишь при прописывании атрибутов в теге <input> в теле HTML. но определение обязательности через в теле HTML черевато, тем что пользователь может сохранить страницу формы на локальный комп удалить, допустим атрибуты обязательности, в атрибуте action тега form. прописать полный путь и спокойно отправлять. Я сам так делал на сайтах где макс длинна сообщения ограничивалась в теле ХТМЛ

trikadin 01.12.2011 22:36

Цитата:

Сообщение от Mightyraven
как это предусмотреть? так что рег выражения по любому придется добавлять в ручную в скрипт. как не крути.

Почему? Пусть вводят регулярку, какую им нужно, а твой скрипт будет проверять по ней... Что, не знаешь о создании регулярок из строк?)

Mightyraven 01.12.2011 22:47

trikadin,
я не до конца понимаю... что вы предлагаете.
кто будет вводить регулярку???

trikadin 01.12.2011 22:52

Mightyraven, вы сетуете на то, что придётся создавать миллион разных регулярок.

Так пусть их вводят программисты, которые будут пользоваться вашей библиотечкой. Псевдокод:

checkInput= function(input, regexp) {
 regexp= typeof regexp=="string" ?  new RegExp(regexp) : regexp; // если строка - делаем из неё регу, иначе думаем, что это и так рега
 ....
}


Просто передавать регу в функцию параметром, и всё...

Mightyraven 01.12.2011 22:55

Уф, как трудно дошло до меня, спасибо!

trikadin 01.12.2011 22:56

Mightyraven, да не за что...


Часовой пояс GMT +3, время: 10:06.