После последнего обновления системы появилась возможность проверять поля форм перед отправлением. Это дополнение появилась во всех сервисах, где есть форма для отправки. Что на это дает?
1. Возможность самостоятельно задавать требования к заполнению полей. Проверку полей можно осуществить практически любую и зависит это от ваших требований.
2. Проверка осуществляется до того как форма будет передана на сервер. Это сокращает трафик и ускоряет общение между клиентом и сервером. Так как задачи у всех разные, то постараюсь описать это в общих чертах.
Проверкой формы занимается функция checksubmit(this) , в качестве параметра здесь является сама форма, т.е. обращение к элементам формы облегчено. Разрешением на отправление формы на сервер будет : return true; запретом на отправку: return false.
Все функции принято писать в голове HTML (что на самом деле не обязательно). Общий вид этой функции будет выглядить так:
Code
<script>
function checksubmit(fmy) {
if(fmy.название объекта.value=='правильное значение') return true;
else { alert('Неправельное заполнение поля ...'); return false; }
}
</script>
Форма передает указатель на себя (this) и мы этот указатель присваиваем переменной fmy. Если бы его небыло, то fmy.название объекта.value нужно было бы писать так: document.all.название объекта.value. Как можно узнать "название объекта". Я расскажу как я это делаю:
1. Открываю страницу с формой
2. Просматриваю и копирую HTML-код страницы и вставляю его в визуальный редактор
3. Просматриваю эту страницу в просмотре
4. Ищу нужное поле и выбираю его
5. В параметрах его нахожу его имя(name)
Так к примеру название списка категорий имеет имя cat. Вот возьмем его и проверим выбрана ли у нас категория:
Code
<script>
function checksubmit(fmy) {
if(fmy.cat.value!=0) return true;
else { alert('Не выбрана категория'); return false; }
}
</script>