必填校驗:修改瀏覽器自帶“請填寫此字段。”


 

function validate(input, msg){
    if($(input).val().trim().length > 0){
        msg = '';
    }
    $(input).attr('oninvalid',"this.setCustomValidity('"+msg+"')").trigger('oninvalid');
}

 

 

<input id="username" name="username" oninput="validate(this,'用戶名不能為空')"  type="text" placeholder="登錄用戶名/郵箱" />
<input id="password" name="password" oninput="validate(this,'密碼不能為空')" type="password" placeholder="密碼" />

 

 

$("input").trigger("oninput");

 

注意:

  • 用到了jQuery 
  • 不需要屬性 required="required" 
  • 需要在頁面 input 加載完畢之后觸發一次oninput 事件

 

在點擊form submit 時,如果為空則觸發,如果輸入值則不會觸發,效果如下:

 

 

 

補充(2020-11-26):

將下面代碼復制到html文件,瀏覽器打開可自行測試

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>登錄頁面</title>
<script src="http://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript">
    function validate(input, msg) {
        if ($(input).val().trim().length > 0) { msg = ''; } $(input).attr('oninvalid', "this.setCustomValidity('" + msg + "')").trigger('oninvalid'); } </script> </head> <body> <form> <p> <input id="username" name="username" oninput="validate(this,'用戶名不能為空')" type="text" placeholder="登錄用戶名/郵箱" /> </p> <p> <input id="password" name="password" oninput="validate(this,'密碼不能為空')" type="password" placeholder="密碼" /> </p> <p> <button type="submit">提交</button> </p> </form> <script type="text/javascript"> $("input").trigger("oninput"); </script> </body> </html>

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM