Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » JavaScript: Проверка значений элементов формы (e-mail, имя..

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14

Открыть новую тему     Написать ответ в эту тему

Kaii

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, кто знает, как сделать JavaScript'ом проверку формы на заполнение имени и сообщения и валидности мейла?

Общая информация о регулярных выражениях в Javascript:
http://www.johnrobertmorris.com/dev/Regex.asp
http://www.evolt.org/article/Regular_Expressions_in_JavaScript/17/36435/

Инструментарий для проверки регулярных выражений:
http://www.cuneytyilmaz.com/prog/jrx/
 





Переименовал. — Svarga.

Всего записей: 35 | Зарегистр. 15-11-2002 | Отправлено: 20:05 16-11-2002 | Исправлено: Cheery, 00:39 05-10-2006
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DMx
проверять лучше всего тут
http://www.cuneytyilmaz.com/prog/jrx/
посмотрю потом если будет время, что очень маловероятно
 
ps: проще всего для каждого типа карты написать отдельную проверку и потом сравнивать в зависимости от того, какой тип карты выбрал юзверь

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 00:34 05-10-2006 | Исправлено: Cheery, 00:49 05-10-2006
Cybermouse



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нужнго проверить правильность ввода icq - максимум 8 символов и все цыфры. как это с помощью явы сделать?

Всего записей: 129 | Зарегистр. 18-04-2006 | Отправлено: 13:32 05-10-2006
DMx



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cybermouse
Что-то вроде этого:

Код:
function check_icq()
{
    var reg=/[^\d]/;
    if (reg.test(document.forms[0].icq.value)) {
        alert("Неверный номер ICQ");
        document.forms[0].icq.focus();
        return false;
    }
    return true;
}

Всего записей: 154 | Зарегистр. 23-09-2003 | Отправлено: 14:35 05-10-2006
Cybermouse



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А как мне можно вот по такому принцыпу сделать? просто по нажатию у меня уже вызывается функция. Вот мне в неё и нужно добавить пункт проверки аси. Вот собственно сама функция:
 

Код:
 
<script>  
function checK(f) {  
if (f.name.value=='') {alert("Введите пожалуйста ваше имя");f.name.focus();return false}  
if (f.email.value=='') {alert("Введите пожалуйста ваш e-mail");f.email.focus();return false}  
if (f.icq.value=='') {alert("Введите пожалуйста ваш icq");f.icq.focus();return false}  
if (f.Comment.value=='') {alert("Введите пожалуйста ваши комментарии");f.Comment.focus();return false}  
 
if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(f.email.value)){  
return true  
}  
alert('Введите пожалуйста\n правильный e-mail');f.email.select()  
return false  
}
</script>  
 


Всего записей: 129 | Зарегистр. 18-04-2006 | Отправлено: 17:26 05-10-2006 | Исправлено: Cybermouse, 17:31 05-10-2006
DMx



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cybermouse
Ну так и вставь мой "if" в свою функцию. И обращение к полю поставь не прямое... т.е. замени document.forms[0] на f.

Всего записей: 154 | Зарегистр. 23-09-2003 | Отправлено: 17:47 05-10-2006 | Исправлено: DMx, 17:49 05-10-2006
Cybermouse



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Сделал вот так... но он не проверяет...  
 
 

Код:
 
<script>  
function checK(f) {  
if (f.name.value=='') {alert("Введите пожалуйста ваше имя");f.name.focus();return false}  
if (f.email.value=='') {alert("Введите пожалуйста ваш e-mail");f.email.focus();return false}  
if (f.icq.value=='') {alert("Введите пожалуйста ваш телефон");f.icq.focus();return false}  
if (f.Comment.value=='') {alert("Введите пожалуйста ваши комментарии");f.Comment.focus();return false}  
 
function check_icq()  
{  
    var reg=/[^\d]/;  
    if (reg.test(f.icq.value)) {  
        alert("Неверный номер ICQ");  
        f.icq.focus();  
        return false;  
    }  
    return true;  
}  
 
 
if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(f.email.value)){  
return true  
}  
alert('Введите пожалуйста\n правильный e-mail');f.email.select()  
return false  
}  
</script>  
 
 

Всего записей: 129 | Зарегистр. 18-04-2006 | Отправлено: 22:58 05-10-2006 | Исправлено: Cybermouse, 23:02 05-10-2006
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cybermouse

Цитата:
Сделал вот так... но он не проверяет...  

включаем голову.. где идет вызов функции check_icq??


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:00 05-10-2006
Cybermouse



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ээээ... логично)))))))))
 
Добавлено:
Так, вот только теперь нужно остановыть выполнение функции главной. А то сообщение то он выводит, но продолжает работу по всем трём направлениям...

Всего записей: 129 | Зарегистр. 18-04-2006 | Отправлено: 23:02 05-10-2006
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cybermouse

Цитата:
Так, вот только теперь нужно остановыть выполнение функции главной. А то сообщение то он выводит, но продолжает работу по всем трём направлениям...

не надо.. просто опять же нужно включить голову.
куда используются в таком случае return false или true? никуда..
значит надо делать как и в пред. случае
if(check_icq()) то то-то..
   else  то-то

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:09 05-10-2006
Cybermouse



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В общем благодаря DMx у меня всё получилось.

Всего записей: 129 | Зарегистр. 18-04-2006 | Отправлено: 23:20 05-10-2006
dron



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Добрый день! Ребят а у меня такой вопрос: есть php-форма отправки почты. При условии не заполнения обязательных полей выдается сообщение об этом, но на новой странице и вовесь экран. Хотелось бы внедрить js событие... Всплывающее окошко Alert,что ли... А как это делать я не знаю... Посоветуйте, плиз. Огромнейшее спасибо!
 
http://forum.ru-board.com/topic.cgi?forum=31&topic=11183&start=0&limit=1&m=1#1 - php-скрипт.
http://www.stolbikoff.ru/contacts.html - сама форма.

Всего записей: 413 | Зарегистр. 20-07-2001 | Отправлено: 17:44 05-12-2006
kirill_by

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
в событии onsubmit формы задаеши свой обработчик(валидатор), возвращающий true/false например:

Код:
<FORM NAME="MojaForma" onsubmit="return(myEventHandler());">
<script>
function myEventHandler(){
subj=document.getElementById("subject");
mail=document.getElementById("from");
msg=document.getElementById("message");
if (!subj.value && !mail.value && !msg.value){
    alert("!!!")
    return false}
}
</script>
 

Всего записей: 36 | Зарегистр. 17-10-2005 | Отправлено: 19:43 05-12-2006 | Исправлено: kirill_by, 20:02 05-12-2006
dron



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
ничего не получилось.... можно подробнее, пожалуйста...

Всего записей: 413 | Зарегистр. 20-07-2001 | Отправлено: 16:58 07-12-2006
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dron

Цитата:
можно подробнее, пожалуйста...

куда уж подробнее??
для такой проверки у элементов формы помимо name должен быть еще и ID.. если использовать код постом выше

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 17:15 07-12-2006
kirill_by

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
Необязательно. Метод
getElementById работает и с name полей формы.
 
dron
Вставь код после строк
Код:
<p>
 
Если у Вас не установлена программа почтовый клиент, воспользуйтесь нашей формой отправки почты:
 
</p>
<form enctype="multipart/form-data" action="http://www.stolbikoff.ru/cgi-bin/mail/contact.php" method="post" onsubmit="return(myEventHandler());>

Сюда:
Код:
 <script>
function myEventHandler(){
subj=document.getElementById("subject");
mail=document.getElementById("from");
msg=document.getElementById("message");
if (!subj.value && !mail.value && !msg.value){
    alert("!!!")
    return false}
}
</script>  
А затем уже остальное:
Код:
<table width="500">
<tbody>
<tr>
<td>
<p>
<font color="#ff6600">
<b>
 
Ваше имя:

Всего записей: 36 | Зарегистр. 17-10-2005 | Отправлено: 11:03 08-12-2006 | Исправлено: kirill_by, 11:12 08-12-2006
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kirill_by

Цитата:
getElementById работает и с name полей формы.

да что вы говорите. меня не волнует то, что работает в каком то конкретном браузере - должно работать во всех.


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 17:24 08-12-2006
kirill_by

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
Вот исправленный код. Глянь может чё заметишь?
Код:
 
<script>
function myEventHandler(){
var subj=document.getElementsByName("subject")[0];
var mail=document.getElementsByName("from")[0];
var msg=document.getElementsByName("message")[0];
if (!subj.value || !mail.value || !msg.value){
    alert("!!!");
    return false}
}
</script>  
<form method="post" action="http://www.stolbikoff.ru/cgi-bin/mail/contact.php" onsubmit="return(myEventHandler());">

Всего записей: 36 | Зарегистр. 17-10-2005 | Отправлено: 13:46 12-12-2006
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kirill_by

Цитата:
Глянь может чё заметишь?

замечу что? что я говорил о getElementsById?? а не о том, что используется..


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 15:10 12-12-2006
nox78

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, пожалуйста, как такое сделать.
 
Отчитывается количество времени  
И показывается еще в обратном отчете и потом загорается кнопка для регистрации
Вот дали код чета он не работает, подскажите, пожалуйста
 

Код:
    
<script><!--
var time = 60;
function accept_reg()
{
    time--;
    frm = document.accept_reg;
    if (frm)
      frm.submit.value = 'До продолжения регистрации осталось ('+time+') секунд';
    if (time>0)
      window.setTimeout("accept_reg()",1000);
    else if (frm)
    {
    frm.submit.value = 'Регистрация';
      frm.submit.disabled=0;
    }
}
accept_reg();
--></script>
 






Что в названии темы тебе непонятно и как твой вопрос к ней относится? /Cheery/

Всего записей: 20 | Зарегистр. 22-01-2006 | Отправлено: 12:51 13-12-2006 | Исправлено: Cheery, 19:47 13-12-2006
PLAG



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не знаю, в правильную тему я пишу или нет, извините, если что.
Проблема такая:
Есть ссылка <a href="удалить.html">Удалить</a>
Надо, чтоб при нажатии на эту ссылку появлялось сообщение: "Вы действительно хотите удалить это сообщение или нет?" Естественно  должно быть 2 варианта ответа: Да и Нет. При нажатии на Да, браузер переходил по ссылке "удалить.html", в случае отрицательного ответа, естественно, никуда переходить не надо.
Мучался, мучался я с этим скриптом, никак не получается.
Помогите, люди добрые!

Всего записей: 33 | Зарегистр. 01-10-2006 | Отправлено: 19:19 14-12-2006 | Исправлено: PLAG, 19:20 14-12-2006
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14

Компьютерный форум Ru.Board » Интернет » Web-программирование » JavaScript: Проверка значений элементов формы (e-mail, имя..


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru