Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Нужен простой js (https://forum.antichat.xyz/showthread.php?t=64290)

brasco2k 14.03.2008 15:15

Нужен простой js
 
Вобщем есть поле для ввода email:
<input type='text' name='email' >

Нужно написать js который проверяет правильность ввода т.е text@text.com

FeraS 14.03.2008 15:27

http://www.mexxs.net/reviews.php?file=25
http://web-utils.net/javascript/validate-email-form

kolka 14.03.2008 16:05

Код:

  if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(f.email.value))) {
      alert('Введите правильный е-mail!');f.email.select();
      return false;
  }


astrologer 14.03.2008 16:26

kolka,
Код:

javascript:alert( /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test('_@_.__') )
// Выведет: true

Код:

javascript:alert( /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test('abc--abc@yandex.ru') )
// Выведет: false


brasco2k 14.03.2008 22:01

подскажите плз с php , ато чото не один js не пашет.....

astrologer 14.03.2008 22:03

Цитата:

Сообщение от brasco2k
подскажите плз с php , ато чото не один js не пашет.....

А как ты его применяешь?

brasco2k 14.03.2008 23:00

Цитата:

Сообщение от astrologer
А как ты его применяешь?

Вобщем есть форма

PHP код:

<form method='post' onSubmit "return checkform(this); return isEmailCorrect(this,'email')">
E-mail:<input type='text' name='email'  required

перед ней код:
<script language='JavaScript' src="../js/reg.js"></script>

в нем:

function isEmailCorrect(formname, fieldname) {
var re = /^[a-zA-Z0-9\-_](([a-z0-9\-_\.\+\&]?)+[a-z0-9])?\@((\w([a-zA-Z0-9\-_]+\w)?\.[a-z]{2,4})|(([01]?\d\d|2[0-4]\d|25[0-5])\.([01]?\d\d|2[0-4]\d|25[0-5])\.([01]?\d\d |2[0-4]\d|25[0-5])\.([01]?\d\d|2[0-4]\d|25[0-5]))|(localhost))$/i;
if(re.test(eval("document.forms['"+formname+"']."+fieldname+".value"))) return true;
else {
alert("Email incorrect!");
eval("document.forms['"+formname+"']."+fieldname+".focus()");
return false;
}
}

и траляля...

FeraS 14.03.2008 23:52

Код HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>


<script language="javascript">
function isEmailCorrect(formname, fieldname) {
  var re = /^[a-zA-Z0-9\-_](([a-z0-9\-_\.\+\&]?)+[a-z0-9])?\@((\w([a-zA-Z0-9\-_]+\w)?\.[a-z]{2,4})|(([01]?\d\d|2[0-4]\d|25[0-5])\.([01]?\d\d|2[0-4]\d|25[0-5])\.([01]?\d\d |2[0-4]\d|25[0-5])\.([01]?\d\d|2[0-4]\d|25[0-5]))|(localhost))$/i;
  if(re.test(eval("document.forms['"+formname+"']."+fieldname+".value")))
    return true;
  else {
    alert("Email incorrect!");
    eval("document.forms['"+formname+"']."+fieldname+".focus()");
    return false;
  }
}
</script>
<form action="" name="contactForm" onsubmit="return isEmailCorrect('contactForm', 'email')">
Name: <input type="text" name="name"> &nbsp;
Email: <input type="text" name="email">
<input type="submit" value="OK">
</form>


</body>
</html>

все робит

brasco2k 15.03.2008 12:52

Цитата:

Сообщение от FeraS
Код HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

<body>


<script language="javascript">
function isEmailCorrect(formname, fieldname) {
  var re = /^[a-zA-Z0-9\-_](([a-z0-9\-_\.\+\&]?)+[a-z0-9])?\@((\w([a-zA-Z0-9\-_]+\w)?\.[a-z]{2,4})|(([01]?\d\d|2[0-4]\d|25[0-5])\.([01]?\d\d|2[0-4]\d|25[0-5])\.([01]?\d\d |2[0-4]\d|25[0-5])\.([01]?\d\d|2[0-4]\d|25[0-5]))|(localhost))$/i;
  if(re.test(eval("document.forms['"+formname+"']."+fieldname+".value")))
    return true;
  else {
    alert("Email incorrect!");
    eval("document.forms['"+formname+"']."+fieldname+".focus()");
    return false;
  }
}
</script>
<form action="" name="contactForm" >
Name: <input type="text" name="name"> &nbsp;
Email: <input type="text" name="email">
<input type="submit" value="OK">
</form>


</body>
</html>

все робит

Спасибо, а как поместить в форму 2 запроса:

1. onsubmit="return isEmailCorrect('contactForm', 'email')"

2.onsubmit="return checkform(this)"

?

astrologer 15.03.2008 16:20

Если не заморачиваться, то так:
Код:

onsubmit="return (isEmailCorrect('contactForm', 'email') && checkform(this))"
Но разве функция checkform по логике не должна заодно проверять и корректность введённых данных?


Время: 18:25