zoukankan      html  css  js  c++  java
  • amazeUI表单提交验证--input框required

    效果:

    html:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
            <title>表单提交验证</title>
            <link rel="stylesheet" href="css/amazeui.css">
            <script type="text/javascript" src="js/jquery.min.js"></script>
            <script src="js/amazeui.min.js"></script>
            <script src="js/app.js"></script>
        </head>
        <body>
            <form id="form2" class="am-form am-form-horizontal">
                <div id="panel2" style="margin-top:5px">
                    <div class="am-form-group am-u-sm-12" style="margin-top:5px">
                        <div class="am-u-sm-6">
                            <label class="am-u-sm-4 am-form-label"><span style="color: #ff0000;">*</span>姓名:</label>
                            <div class="am-u-sm-8">
    <!-- 验证非空 --> <input id="deptname" class="am-form-field" maxlength=10 placeholder="姓名" style="300px" pattern="^[sS]*.*[^s][sS]*$" data-validation-message="姓名" required></input> </div> </div> </div> <div class="am-form-group am-u-sm-12" style="margin-top:5px"> <div class="am-u-sm-6"> <label class="am-u-sm-4 am-form-label"><span style="color: #ff0000;">*</span>年龄:</label> <div class="am-u-sm-8">
    <!-- 验证为正整数 --> <input id="sortid" class="am-form-field" placeholder="请输入正整数" pattern="^0$|^+?[1-9]d*$" maxlength="9" style=" 300px" data-validation-message="年龄" required></input> </div> </div> </div> <div class="form-actions" style=" padding-top:1%;text-align: center;"> <button type="submit" class="am-btn am-btn-warning">保存</button> </div> </form> <script type="text/javascript"> //验证提醒 $(function() { $('#form2').validator({ //表单验证初始化 onValid: function(validity) { $(validity.field).closest('.am-form-group').find('.am-alert').hide(); }, onInValid: function(validity) { var $field = $(validity.field); var $group = $field.closest('.am-form-group');//提示语将追加在此类后 var $alert = $group.find('.am-alert'); // 使用自定义的提示信息 或 插件内置的提示信息 var msg = $field.data('validationMessage') || this.getValidationMessage(validity); if (!$alert.length) { $alert = $('<div class="am-alert am-alert-danger am-u-sm-8"></div>').hide().appendTo($group); } $alert.html(msg).show(); }, submit: function() { formValidity = this.isFormValid(); if (formValidity) { //输入框校验 if ($('#deptname').val() == "1") { //二次验证 alert('请正确填写姓名!'); return; } alert('保存成功'); } } }); }); </script> </body> </html>

     附,两表单共用同一验证:将表单初始化定义为一个函数,点击不同表单时销毁表单验证,重新初始化并隐藏错误提示语

    $('#form2').validator('destroy') —— 销毁表单验证
    $('.am-form-group').find('.am-alert').hide();——隐藏错误提示


    附,自定义验证 参考:https://blog.csdn.net/ltllml44/article/details/52041109?locationNum=4&fps=1

    html:
    ···  
      <input type="number" class="am-u-sm-12" placeholder="商品总数量 " maxlength="9" id="goodsnum" data-validation-message="请输入商品总数量" pattern="^[0-9]*[1-9][0-9]*$" required />   <input type="number" class="am-u-sm-12 js-sync-validate" placeholder="初始数量" maxlength="9" id="goodsinit" data-validation-message="初始数量需小于等于商品总数量"/>
    ···
    js:
    $(function() {
      $(
    '#form').validator({
        validate:
    function(validity) {//自定义验证必须要放到validate中处理    //自定义函数处理
          var v = $(validity.field).val();     //用于判断如果当前对象是类.js-sync-validate的时候执行     if ($(validity.field).is('.js-sync-validate')) {
            if($('#goodsnum').val() <= $('#goodsinit').val()){   validity.valid = false;   return validity;    }else{      validity.valid = true;     validity.typeMismatch=true;     return val      }       }
        }, onValid :
    function(validity) {
          $(validity.field).closest(
    '.am-form-group').find('.am-alert').hide(); }, onInValid : function(validity) { var $field = $(validity.field); var $group = $field.closest('.am-form-group'); var $alert = $group.find('.am-alert'); // 使用自定义的提示信息 或 插件内置的提示信息 var msg = $field.data('validationMessage') || this.getValidationMessage(validity); if (!$alert.length) {   $alert = $('<div class="am-alert am-alert-danger am-u-sm-7"></div>').hide().appendTo($group); } $alert.html(msg).show(); }, submit : function() {   var formValidity = this.isFormValid() && validate.valid ; if (formValidity) { console.log('已保存'); } } }); });
     
  • 相关阅读:
    从菜鸟腾飞至专家(我的心得)
    SQL 绕圈算法???
    asp access 时间段
    SQL 绕圈算法2???
    月薪三万的一道面试题
    Java方法参数是引用调用还是值调用?——值调用
    简述一个大型交易网站的发展旅程
    Java分布式应用学习笔记04JDK的并发包的集合总结
    ORACLE 执行计划中cost cardinality bytes cpu_cost io_cost解释
    剖析float型的内存存储和精度丢失问题
  • 原文地址:https://www.cnblogs.com/linjiangxian/p/11536109.html
Copyright © 2011-2022 走看看