|
0 / 0 / 0
Регистрация: 05.07.2018
Сообщений: 48
|
||||||||||||||||
Валидация полей формы02.01.2019, 17:32. Показов 2987. Ответов 16
Вечер добрый, требуется помощь. Ниже код, с простой валидацией полей формы, где кнопка "submit" становится активной после заполнения всех полей.
Два вопроса: 1) Как усложнить регулярным выражением для определенного поля условие заполнения, например, чтобы для переменной "yy" нужно было ввести 2 цифры и 3 пробела? 2) В коде Javascript у меня есть еще переменная, назовем "aaa", которую тоже хочу включить в условие активации кнопки "отправить".
0
|
||||||||||||||||
| 02.01.2019, 17:32 | |
|
Ответы с готовыми решениями:
16
Валидация полей формы, события onfocus и onblur Валидация полей Валидация формы |
|
6497 / 3908 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
||||||
| 02.01.2019, 19:28 | ||||||
|
Здравствуйте!
А почему в JS не работает одновременное сочетание нескольких look ahead? Я скажу всем, до чего довёл планету этот фигляр ПЖ!
1
|
||||||
|
0 / 0 / 0
Регистрация: 05.07.2018
Сообщений: 48
|
|
| 03.01.2019, 12:39 [ТС] | |
|
Спасибо за ответ. Проясните, пожалуйста некоторые моменты:
-Для чего оборачиваются в теги <form> поля <input>? Чтобы можно было использовать комбинацию кода document.forms[0].onchange = checkParams;? -Некоторые поля принимают значения не onchange а oninput. Как его (oninput) добавить в код? Или может все же лучше оставить в input полях "свои" значения вида onchange="checkParams()" и oninput="checkParams()"? -let aaa = true Этим выражением мы указываем, что разрешаем переменной aaa быть true, а указывая в условии переменную if (aaa уже не пишем ==true, поскольку это уже подразумевается конструкцией let aaa = true; Но, если это так, то в чем проверка? Хоть так, хоть этак = true; Наверное, я изначально неправильно проблему изложил: есть поле с идентификатором xx, оно должно быть заполнено согласно условиям которые прописаны в javascript коде переменной aaa. И, если условия прописаны иначе - кнопка submit остается неактивной. -В чем преимущество использования в данном случае xx = document.getElementById("xx").value, вместо var xx = $('#xx').val(); Прошу прощения, что сумбурно излагаю, и наверняка, наговорил много несуразностей с точки зрения программиста. Наверное, потому, что не программист.
0
|
|
|
2037 / 1096 / 409
Регистрация: 29.04.2016
Сообщений: 2,625
|
|||
| 03.01.2019, 12:58 | |||
![]() Добавлено через 3 минуты
0
|
|||
|
0 / 0 / 0
Регистрация: 05.07.2018
Сообщений: 48
|
||
| 03.01.2019, 13:58 [ТС] | ||
|
0
|
||
|
6497 / 3908 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
||
| 03.01.2019, 14:19 | ||
|
kusttt, в скрипте переменная aaa может принимать любое значение, а в функции-валидаторе всего лишь проверяется соответствие.
Если true, то одно из обязательных условий для активации кнопки submit выполнено. Что тут неясного? Добавлено через 1 минуту Добавлено через 7 минут Не. Я согласен, что можно правила для каждого поля отдельно хранить в массиве. Будет другой вариант решения. Можно и через библиотечный метод валидации решить. Это третий вариант решения.
0
|
||
|
2037 / 1096 / 409
Регистрация: 29.04.2016
Сообщений: 2,625
|
||
| 03.01.2019, 14:22 | ||
|
на самом деле сложно разложить по полкам если вы совсем не знакомы с JS
0
|
||
|
6497 / 3908 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
|
| 03.01.2019, 14:24 | |
|
Mr_Sergo, тем более, когда реально для этой типовой задачи валидации существует минимум пять логических вариантов решения.
0
|
|
| 03.01.2019, 14:27 | |
|
Не по теме: amr-now, знаю что для любой задачи можно подобрать несколько решений, сам сегодня подобным маился -> https://www.cyberforum.ru/post13211258.html
0
|
|
|
0 / 0 / 0
Регистрация: 05.07.2018
Сообщений: 48
|
||||
| 03.01.2019, 14:57 [ТС] | ||||
|
amr-now,
0
|
||||
|
6497 / 3908 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
||||
| 03.01.2019, 15:34 | ||||
0
|
||||
|
2037 / 1096 / 409
Регистрация: 29.04.2016
Сообщений: 2,625
|
|||
| 03.01.2019, 15:43 | |||
![]()
0
|
|||
|
0 / 0 / 0
Регистрация: 05.07.2018
Сообщений: 48
|
||
| 03.01.2019, 15:45 [ТС] | ||
|
amr-now, этот "Грязный хак" эквивалентен if (aaa == true ? Интересуюсь не из праздного любопытства, просто сочетание // равно true выглядит как комментарий. Что он делает, этот "Грязный хак"?
P.S. Да, я читал разницу onchange, oninput, onkeyup еще до того как запостил этот вопрос здесь...
0
|
||
|
2037 / 1096 / 409
Регистрация: 29.04.2016
Сообщений: 2,625
|
||||||||||||||||||||||
| 03.01.2019, 16:12 | ||||||||||||||||||||||
|
Перейдите по ссылке которую я скинул выше, напишите что-нибудь в первый инпут и кликните куда-нибудь в не его.
Напишите что-нибудь во второй инпут- и вы сразу же увидите разницу ![]() Добавлено через 1 минуту Вопрос снят, пока писал не видел что вам все понятно Добавлено через 11 минут то данная запись:
то же самое и с false
кстати тут есть интересный момент... если aaa будет равняться 0, то она будет false -> https://codepen.io/Mr_Sergo/pe... itors=1010 Добавлено через 16 секунд
1
|
||||||||||||||||||||||
|
6497 / 3908 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
|
| 03.01.2019, 17:09 | |
|
kusttt, Mr_Sergo, я понял, о чём речь.
http://gnatkovsky.com.ua/poka-... tivna.html Если не городить массивы с правилами, то oninput можно отдельно напихать на input type="text" Но это не самое элегантное решение. Массивы с правилами, конечно, покруче.
0
|
|
|
0 / 0 / 0
Регистрация: 05.07.2018
Сообщений: 48
|
||
| 03.01.2019, 20:20 [ТС] | ||
|
Mr_Sergo,
Что я понял на данном этапе, что строки: if(aaa) и if(aaa == true) эквивалентны, поскольку мы указали let aaa = true; и // равно true - это просто комментарий. Mr_Sergo, в приведенном мной коде oninput(а) действительно нет, код я упростил, чтоб "лишнее" не мешало и оставил везде onchange. Так, что здесь я "нахимичил". amr-now, да я по ссылке, приведенной вами брал этот код и "пилил" его под себя))
0
|
||
|
6497 / 3908 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
||||||
| 04.01.2019, 14:01 | ||||||
|
kusttt, Mr_Sergo, вариант с массивом настроек.
Элемент массива: - id элемента HTML, - имя события, - предикат, возвращающий true, если произвольное условие выполнено.
1
|
||||||
| 04.01.2019, 14:01 | |
|
Помогаю со студенческими работами здесь
17
Валидация формы
Валидация формы
Валидация формы на Javascript Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|