2012-04-30 2 views
0

У меня есть большая форма, которая нуждается в одной функции для проверки всей формы.JS Форма проверки

Мое имя формы «orderform» У меня есть все, что установлено в форме, правильно, теперь мне просто нужно добавить к функции.

Мне нужно убедиться, что адрес электронной почты введен и действителен, в форме, которую он назвал «emailaddress», что мне нужно включить в функцию, чтобы это произошло?

Кроме того, у меня есть 2 переключателя, и мне это нужно, так что, когда один выбран, ничего не происходит, но когда выбрано другое, он проверяет другой раздел, например, другой адрес.

Может ли кто-нибудь протянуть руку?

О, последнее, должно быть простым, но как вы можете проверить числовое поле, а также убедиться, что оно имеет определенную длину, например, почтовый индекс.

Спасибо всем !!!!

ответ

1

Это довольно обычная вещь. Вы проверили какие-либо плагины или рамки JS-проверки? Большинство из них уже имеют общие шаблоны проверки, такие как обязательные поля, номера, адреса электронной почты и т. Д.

jQuery Validation имеет встроенный валидатор для адреса электронной почты, числовой адрес, URL. Он также позволяет добавлять собственные валидаторы.

Я видел потерянные веб-сайты, где валидатор не принимает мой адрес электронной почты с TLD INFO. Регулярное выражение для проверки адреса электронной почты не так просто. Вот выдержка из JQuery валидатора:

/** 
* jQuery Validation Plugin 1.9.0 
* 
* http://bassistance.de/jquery-plugins/jquery-plugin-validation/ 
* http://docs.jquery.com/Plugins/Validation 
* 
* Copyright (c) 2006 - 2011 Jörn Zaefferer 
* 
* Dual licensed under the MIT and GPL licenses: 
* http://www.opensource.org/licenses/mit-license.php 
* http://www.gnu.org/licenses/gpl.html 
*/ 
// http://docs.jquery.com/Plugins/Validation/Methods/email 
    email: function(value, element) { 
     // contributed by Scott Gonzalez: http://projects.scottsplayground.com/email_address_validation/ 
     return this.optional(element) || /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(value); 
    }, 
+0

Мне нужно сделать все это по коду и локально на моей машине, я учу вас. Извините, должно быть, яснее, что я плохой. –

+0

Ну, это может быть нормально для обучения, но я всегда буду изучать список доступных библиотек и инструментов, прежде чем изобретать велосипед. Рассмотрите все время, которое вы потеряете, чтобы проверить и исправить свой код. –

1

Вы можете получить доступ к информации внутри формы с помощью:

document.yourformname.elementname

Чтобы узнать, как проверить их, QuirksMode имеет действительно превосходное введение, в том числе по радио и флажки, которые вам понадобятся. Проверка формы слишком велика, чтобы отвечать в одном сообщении. ;)

Смежные вопросы