• 必填校验:修改浏览器自带“请填写此字段。”


    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>

     

     

  • 相关阅读:
    BZOJ2002 [HNOI2010] 弹飞绵羊
    BZOJ1030 [JSOI2007] 文本生成器
    BZOJ3233 [AHOI2013] 找硬币
    BZOJ4269 再见xor
    BZOJ5297 CQOI2018 社交网络
    LOJ149 0/1分数规划
    BZOJ2132 圈地计划
    UOJ131 [NOI2015] 品酒大会
    composer速度慢(composer更换国内镜像)
    thinkphp6安装报错,composer install tp6 报错 Parse error: syntax error
  • 原文地址:https://www.cnblogs.com/zno2/p/13540321.html
Copyright © 2020-2023  润新知