Цитата:
|
Цитата:
По разметке ты неправ. Я знаю возможности html5, мне это решение не подходит. Ошибки должны быть оформлены так, как нарисовал дизайнер, я уже писал об этом. Далее. Никакой разницы в данном случае нет, где писать required, если все равно браузерную валидацию буду отключать. Точнее есть. по сути, надо включить возможность валидации html5, а потом отключить. Где смысл? А для телефона вообще нужно использовать masked.input, потому что в дизайне так нарисовано и написано в тз. Цитата:
Special for you. Мне нужен ответ на вопрос, который я задал в самом начале. Чисто гипотетически предположи, что валидация будет происходить на сервере, а ее результат будет приходить аяксом. Тогда такое не прокатит: if(error) e.preventDefault() |
И насчет использования jquery, noscript и пр. Это тема холиваров по всему интернету, не надо здесь это обсуждать.
|
jQuery - не обсуждаю.
noscript - не холивар. Он есть, его используют. Есть качественные сайты, разработчики которых знают об этом. Есть кривые сайты и те которые не знают или попросту плюют. Че тут холиварить то? Это просто факты. Цитата:
Цитата:
$form.on('submit', function(e) { e.preventDefault(); var form = this; asyncValidation(function() { form.submit(); }); }); Цитата:
form.noValidate = true Цитата:
Какая тебе блин разница как писать if ($input.parent().hasClass('required')) или if ($input.attr('required')) Цитата:
|
Цитата:
1. такие люди - исключение, и не факт, что они что-то будут покупать на сайте, если это магазин или сайт услуг. 2. это требует времени, но доплачивать не каждый заказчик захочет. Конечно, если я буду делать сайт для себя, то сделаю возможность его функционирования без скриптов. Может быть. Цитата:
Цитата:
form.noValidate = true А стандартизованная валидация не всегда подходит. Для того же телефона. Нужно, чтобы он был в формате +7xxxxxxxx. Ну и кроме email, tel и url есть много типов полей, которые стандартами w3 не предусмотрены. Для них все равно придется писать валидатор. У меня вместо type в таком случае используется класс (.phone, .email и т.д.). Не вижу ничего плохого в таком решении, оно гораздо более универсально, чем использование type. Опять же для совсем специфичных полей можно использовать data атрибуты (недавно надо было сделать ввод чисел, кратных 25). Этого ведь не предусмотрено в w3? Цитата:
При событии form.submit() у тебя опять вызовется весь этот код $form.on('submit', function(e) { e.preventDefault(); var form = this; asyncValidation(function() { form.submit(); }); }); И так будет до бесконечности. Ты его хоть пробовал запустить? Надо ипользовать .off(), чтобы убрать обработчик. |
Цитата:
Вообще, я недавно начал использовать NoScript, и честно сказать порой удивляюсь корректной работе некоторых сайтов. Хорошие сайты отображают сообщение о просьбе включить js. Причем это не тупой текст на весь сайт непонятно о чем, а в конкретном месте для конкретных целей (слайдер там какой-нибудь). Но если заказчик не знает и слышать не хочет, и тем более доплачивать за это - то можно понять. |
Цитата:
<form action="javascript:'форма отправлена'"> <button type="submit">Оптравить</button> </form> <script src="http://code.jquery.com/jquery-latest.min.js"></script> <script> var $form = $('form'); var asyncValidation = function(callback) { $form.text('Делаем проверки...'); setTimeout(callback, 2000); }; $form.on('submit', function(e) { e.preventDefault(); var form = this; asyncValidation(function() { form.submit(); }); }); </script> form.submit не генерирует событий. |
Цитата:
Спасибо. |
beebop, где можно посмотреть че ты там мудришь. Просто интересно подойдет моя стряпня FormValidator под твои задачи или нет. Или хотя бы просто атрибуты из HTML5 валидации заюзать получится или нет.
|
Обновил свой скрипт: http://jsfiddle.net/danya_postfactum/p1zde8v3/1/
Добавил сообщение. Правда там все далеко от идеала. |
Часовой пояс GMT +3, время: 10:06. |