В чем ошибка в моей форме ввода электронной почты.Всегда возвращает ложь при отправке - PullRequest
0 голосов
/ 29 мая 2018

Я думаю, что проблема в jQuery.Всякий раз, когда какое-либо значение вводится в поле ввода электронной почты, и попробуйте отправить форму. Это показывает, что неверная погода является верным значением или нет.Пожалуйста, помогите мне.Весь мой код не работает, пожалуйста, пройдите его и внимательно проверьте jQUERY SECTION , так как я думаю, что проблема не в HTML, а в jQuery

Ответы будут оценены.

 function isEmail(email) {

            var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/;

                return regex.test(email);

            }
 $("#submit").click(function() {
 alert(isEmail($("#email").val()));
 });
 body{

 font-family: Lato;
 font-size: 200%
 }
 input{

 height: 40px;
 padding: 5px 5px 12px 5px;
 font-size: 25px;
 border-radius: 5px;
 border: 1px solid grey;
 width: 320px;
 }
 label{

 position: relative; 
 top: 5px;
 float: left;
 width: 275px;
 }
 #wrapper{

 width: 625px;
 margin: 0 auto;
 }
 .elements{
 margin-bottom: 10px;
 }
 #submit{
 width: 130px;
 margin-left: 275px;
 text-align: center;
 background-color: lightgrey;
 height: 55px;
 }
<!doctype html>
 <html>
 <head>
 <meta charset="UTF-8">
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
 <title>jQuery</title>
 </head>
 <body>

 <div id="wrapper">

 <div class="elements">
 <label for="Email">Email</label>
 <input type="text" name="Email" id="Email" placeholder="eg:yourname@gmail.com">
 </div>
 <div class="elements">
 <label for="Phone">Phone No</label>
 <input type="text" name="Phone" id="Phone No" placeholder="eg:1234567890">
 </div> 
 <div class="elements">
 <label for="Password">Password</label>
 <input type="password" name="Password" id="Password">
 </div> 
 <div class="elements">
 <label for="confirmPassword">ConfirmPassword</label>
 <input type="password" name="confirmPassword" id="confirmPassword">
 </div>
 <div class="elements">
 <input type="submit" id="submit" value="Sign Up">
 </div>
 </div>
 </body>
</html>

Ответы [ 4 ]

0 голосов
/ 29 мая 2018

вы не совпадали с идентификатором для электронной почты.попробуйте изменить идентификатор id с #email на #Email в jQuery, и он будет работать

$("#submit").click(function() {
console.log($("#Email").val());
 alert(isEmail($("#Email").val()));
 });
 
  function isEmail(email) {

           var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
           
    return re.test(String(email).toLowerCase());

            }
body{

 font-family: Lato;
 font-size: 200%
 }
 input{

 height: 40px;
 padding: 5px 5px 12px 5px;
 font-size: 25px;
 border-radius: 5px;
 border: 1px solid grey;
 width: 320px;
 }
 label{

 position: relative; 
 top: 5px;
 float: left;
 width: 275px;
 }
 #wrapper{

 width: 625px;
 margin: 0 auto;
 }
 .elements{
 margin-bottom: 10px;
 }
 #submit{
 width: 130px;
 margin-left: 275px;
 text-align: center;
 background-color: lightgrey;
 height: 55px;
 }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="wrapper">

 <div class="elements">
 <label for="Email">Email</label>
 <input type="text" name="Email" id="Email" placeholder="eg:yourname@gmail.com">
 </div>
 
 <div class="elements">
 <label for="Phone">Phone No</label>
 <input type="text" name="Phone" id="Phone No" placeholder="eg:1234567890">
 </div> 
 
 <div class="elements">
 <label for="Password">Password</label>
 <input type="password" name="Password" id="Password">
 </div> 
 
 <div class="elements">
 <label for="confirmPassword">ConfirmPassword</label>
 <input type="password" name="confirmPassword" id="confirmPassword">
 </div>
 
 <div class="elements">
 <input type="submit" id="submit" value="Sign Up">
 </div>
 
 </div>
0 голосов
/ 29 мая 2018

@ Nitish, если вы знаете, тогда javascript чувствителен к регистру, ваш тэг ID = "Email", тогда как ваш клик содержит маленькое e.

Так что замените

alert(isEmail($("#email").val()))

на

alert(isEmail($("#Email").val()))

и все работает !!

0 голосов
/ 29 мая 2018

jQuery чувствителен к регистру.У вас есть:

<input type="text" name="Email" id="Email" placeholder="eg:yourname@gmail.com">

Таким образом, вы должны использовать:

$("#submit").click(function() {
 alert(isEmail($("#Email").val()));
 });
0 голосов
/ 29 мая 2018

Ваше предупреждение неверно.Попробуйте это:

<!doctype html>
 <html>
 <head>
 <meta charset="UTF-8">
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
 <title>jQuery</title>
 <style type="text/css">

 body{

 font-family: Lato;
 font-size: 200%
 }
 input{

 height: 40px;
 padding: 5px 5px 12px 5px;
 font-size: 25px;
 border-radius: 5px;
 border: 1px solid grey;
 width: 320px;
 }
 label{

 position: relative; 
 top: 5px;
 float: left;
 width: 275px;
 }
 #wrapper{

 width: 625px;
 margin: 0 auto;
 }
 .elements{
 margin-bottom: 10px;
 }
 #submit{
 width: 130px;
 margin-left: 275px;
 text-align: center;
 background-color: lightgrey;
 height: 55px;
 }
 </style>
 </head>
 <body>

 <div id="wrapper">

 <div class="elements">
 <label for="Email">Email</label>
 <input type="text" name="Email" id="Email" placeholder="eg:yourname@gmail.com">
 </div>
 <div class="elements">
 <label for="Phone">Phone No</label>
 <input type="text" name="Phone" id="Phone No" placeholder="eg:1234567890">
 </div> 
 <div class="elements">
 <label for="Password">Password</label>
 <input type="password" name="Password" id="Password">
 </div> 
 <div class="elements">
 <label for="confirmPassword">ConfirmPassword</label>
 <input type="password" name="confirmPassword" id="confirmPassword">
 </div>
 <div class="elements">
 <input type="submit" id="submit" value="Sign Up">
 </div>
 </div>
 <script type="text/javascript">
 function isEmail(email) {

            var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/;

                return regex.test(email);

            }
 $("#submit").click(function() 
 {
   alert($("#Email").val());
 });
 </script>
 </body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...