繁体   English   中英

验证消息不显示

[英]Validation message doesn't show

今天是个好日子! 我的问题是为什么firstNamelastName错误消息没有显示。 usernamepassword错误消息运行正常。 即使passwordconfirm password错误也可以正常工作。 唯一的问题是当我的firstNamelastName为空时,不会显示错误消息。 我已经下载了jQuery并将其包含在我的head标签中。 我再次检查ID名称(如果与我的HTML相同)。 我觉得也一样。 关于我的问题有人可以帮我吗? 我将在下面显示您的代码!

 $(function() { $("#firstname_errors").hide(); //hide the span tag $("#lastname_errors").hide(); //hide the span tag var error_firstnames = false; var error_lastnames = false; $("#form_firstnames").focusout(function() { check_firstname(); }); $("#form_lastnames").focusout(function() { check_lastname(); }); function check_firstname() { var firstname = $("#form_firstnames").val(); if (firstname == "") { $("#firstname_errors").html("Firstname is empty"); $("#firstname_errors").show(); $("#firstname_errors").addClass("formError"); error_firstnames = true; } else { $("#firstname_errors").hide(); } } function check_lastname() { var lastname = $("#form_lastnames").val(); if (lastname == "") { $("#lastname_errors").html("Lastname is empty"); $("#lastname_errors").show(); $("#lastname_errors").addClass("formError"); error_lastnames = true; } else { $("#lastname_errors").hide(); } } $("#registration_forms").submit(function() { error_firstnames = false; error_lastnames = false; check_firstname(); check_lastname(); if (error_firstname = false && error_lastname = false) { return true; } else { return false; } }); }); 
 <form id=registration_forms action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST"> <div> <label for="fname">First Name: </label> <input type="text" name="fname" id="form_firstnames" placeholder="First Name" autocomplete="off"> <span id="firstname_errors"></span> //error message </div> <div> <label for="lname">Last Name: </label> <input type="text" name="lname" id="form_lastnames" placeholder="Last Name" autocomplete="off"> <span id="lastname_errors"></span> //error message </div> <div> <input type="submit" name="btnSave" value="Register"> </div> Already a member? <a href="login.php">Login</a> </form> 

这行是错误的:

if (error_firstname = false && error_lastname = false)

它在做分配,而不是比较。 将该if/else更改为:

return !error_firstnames && !error_lastnames;

 $(function() { $("#firstname_errors").hide(); //hide the span tag $("#lastname_errors").hide(); //hide the span tag var error_firstnames = false; var error_lastnames = false; $("#form_firstnames").focusout(function() { check_firstname(); }); $("#form_lastnames").focusout(function() { check_lastname(); }); function check_firstname() { var firstname = $("#form_firstnames").val(); if (firstname == "") { $("#firstname_errors").html("Firstname is empty"); $("#firstname_errors").show(); $("#firstname_errors").addClass("formError"); error_firstnames = true; } else { $("#firstname_errors").hide(); } } function check_lastname() { var lastname = $("#form_lastnames").val(); if (lastname == "") { $("#lastname_errors").html("Lastname is empty"); $("#lastname_errors").show(); $("#lastname_errors").addClass("formError"); error_lastnames = true; } else { $("#lastname_errors").hide(); } } $("#registration_forms").submit(function() { error_firstnames = false; error_lastnames = false; check_firstname(); check_lastname(); return !error_firstnames && !error_lastnames; }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <form id=registration_forms action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST"> <div> <label for="fname">First Name: </label> <input type="text" name="fname" id="form_firstnames" placeholder="First Name" autocomplete="off"> <span id="firstname_errors"></span> //error message </div> <div> <label for="lname">Last Name: </label> <input type="text" name="lname" id="form_lastnames" placeholder="Last Name" autocomplete="off"> <span id="lastname_errors"></span> //error message </div> <div> <input type="submit" name="btnSave" value="Register"> </div> Already a member? <a href="login.php">Login</a> </form> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM