Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как должна работать форма проверки email? 
:(
    Опции темы
voskvosvo
Дата 1.4.2008, 22:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 1.4.2008

Репутация: нет
Всего: нет




господа, вот такая попытка скрипта. учусь, универсальная программа для проверки email не нужна. надо чтоб заработало это. 
чтобы тест правильного email происходил отдельно. а Submit уже отправлял форму. хочу понять как взаимосвязаны test и submit

<HTML>
<HEAD>
<script LANGUAGE=”JavaScript”>
function test1(object)
{if (object.mail.value.indexOf("@")=-1)
alert("вы ввели неверный email адрес")
else 
alert ("ok")}
</SCRIPT>
</HEAD>
<BODY>
<form name="f1" method=get onSubmit="submit("f1"); return=true;">
Email:<input type=text name="mail" size=20 maxlength=20 >
<input type="button" value="test" onClick=test1(this.form.mail)>
<br>
<input type="submit" value="Отправить">
<input type="reset" value="Сброс"></FORM>
</BODY>
</HTML>

спсибо
PM MAIL   Вверх
SelenIT
Дата 1.4.2008, 23:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 7
Всего: 401



Проверка на равенство в JS — ==, а = — это присваивание. Чтобы не напарываться на эти грабли, полезно в сравнении константу писать слева.

А вообще пора уже юзать <input type="email"> (из WF2, часть HTML5), ставить последнюю Оперу и радоваться жизни smile


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Atlete
Дата 2.4.2008, 00:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 105
Регистрация: 15.8.2007

Репутация: нет
Всего: нет



Насчет HTML5 несоглашусь, если брать аспект крос браузерности. 
Если я не ошибаюсь то ИЕ как раз этот стандарт не поддерживает.

А теперь по теме:
- проверку валидного e-mail лучше написать регулярным выражением,
не так сложно как кажеться + в инете можно найти готовые примеры на js.
- можно сделать твою задачу так:
1 удрать кнопку типа сабмит и поставить просто буттон
2 на событие onclick в виде фкнкции которая проверяет e-mail
3 если e-mail валидный делаем форме submit(), в противном случае диалок с ошибкой.


P.S. Если завтра найдется минутка накидаю пример.

Это сообщение отредактировал(а) Atlete - 2.4.2008, 00:10
PM MAIL ICQ   Вверх
SelenIT
Дата 2.4.2008, 03:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 7
Всего: 401



Цитата(Atlete @  2.4.2008,  00:09 Найти цитируемый пост)
Насчет HTML5 несоглашусь, если брать аспект крос браузерности. 

Это первоапрельская "добавка" была ;). WebForms 2.0 пока поддерживаются лишь в 9-й Опере, о кроссбраузерности речь еще не идет. Хотя в каждой шутке...

Цитата(Atlete @  2.4.2008,  00:09 Найти цитируемый пост)
1 удрать кнопку типа сабмит и поставить просто буттон

Лучше и надежнее оставить submit, а у формы прописать onsubmit="return validate(this)". И чтоб функция validate(форма) возвращала true или false, в зависимости от результата проверки.

Добавлено через 4 минуты и 58 секунд
Цитата(voskvosvo @  1.4.2008,  22:07 Найти цитируемый пост)
хочу понять как взаимосвязаны test и submit

В общем случае никак не связаны. Но, поскольку событие submit (происходящее при отправке формы штатным образом - кнопкой submit или Enter-ом) является отменяемым, можно встроить проверку в его обработчик (как я описал выше и как обычно делают в таких ситуациях).


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Atlete
Дата 2.4.2008, 09:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 105
Регистрация: 15.8.2007

Репутация: нет
Всего: нет



А вот пример как обещал

Код

<HTML>
<HEAD>
<script language="JavaScript" type="text/javascript">
function test1(){
var emails = document.getElementById('email').value;
var pattern = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
var reg = new RegExp(pattern);
if(reg.exec(emails)){
    //alert('correct');
    return true;
}
else{
    //alert('incorrect');
    return false;
}

}
</script>
</HEAD>
<BODY>
<form name="f1" method="GET" onSubmit="return test1()">
Email:<input id="email" type=text name="mail" size=20 maxlength=20 >
<input type="button" value="test" onClick=test1(this.form.mail)>
<br>
<input type="submit" value="Отправить">
<input type="reset" value="Сброс"></FORM>
</BODY>
</HTML>

PM MAIL ICQ   Вверх
voskvosvo
Дата 2.4.2008, 16:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 1.4.2008

Репутация: нет
Всего: нет



спасибо, Atlete, за пример и советы. буду с ним разбираться. функцию проверки валидности сочиню сам, потому что задание такое. главное - как взаимодействуют элементы формы.   
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0454 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.