zoukankan      html  css  js  c++  java
  • python测试开发django183.bootstrapformvalidation重置校验的方法 上海

    前言

    form表单提交之前,需先校验数据合法性,当连续提交时,重置了form表单,校验方法也需要跟着重置

    遇到问题

    参考前面一篇https://www.cnblogs.com/yoyoketang/p/15745166.html,重置表单后,

    表单校验并没有重置

    formvalidation校验

    表单校验器

    // 表单校验器
    function validate_model_form(id){
        $(id).formValidation({
            message : 'This value is not valid',
            icon : {
                valid : 'glyphicon glyphicon-ok',
                invalid : 'glyphicon glyphicon-remove',
                validating : 'glyphicon glyphicon-refresh'
            },
            fields : {
                project_name: {
                    message : '项目名称校验不通过',
                    validators : {
                        notEmpty : {
                            message : '不能为空'
                        },
                        stringLength: {
                            min: 1,
                            max: 30,
                            message: '项目名称1-30位字符' },
                        regexp: {
                            regexp:  /^[\u0391-\uFFE5A-Za-z0-9_\s]+$/,
                            message: '项目名称不能有特殊字符'
                        }
                    }
                },
                responsible_name : {
                    validators : {
                        stringLength: {
                            max: 30,
                            message: '最大30位字符' },
                        regexp: {
                            regexp:  /^[\u0391-\uFFE5A-Za-z0-9_\s]+$/,
                            message: '不能有特殊字符'
                        }
                    }
                },
                test_user : {
                    validators : {
                        stringLength: {
                            max: 30,
                            message: '最大30位字符' },
                        regexp: {
                            regexp:  /^[\u0391-\uFFE5A-Za-z0-9_\s]+$/,
                            message: '不能有特殊字符'
                        }
                    }
                },
                publish_app : {
                    validators : {
                        stringLength: {
                            max: 30,
                            message: '最大30位字符' },
                        regexp: {
                            regexp:  /^[\u0391-\uFFE5A-Za-z0-9_\s]+$/,
                            message: '不能有特殊字符'
                        }
                    }
                },
                project_desc : {
                    validators : {
    
                        stringLength: {
                            max: 200,
                            message: '最大200位字符' }
                    }
                }
            }
        })
    }
    // 页面初始化需调用校验方法
    $(function() {
        validate_model_form('#add-model-form');
    });
    

    当提交过一次后,form表单初始化了,再次弹出模态框编辑时,校验方法没重置,于是需重置校验

           // 销毁校验
           $("#add-model-form").data('formValidation').destroy();
           $("#add-model-form").data('formValidation', null);
           // 重新初始化校验 
           validate_model_form('#add-model-form');
    

    写到ajax提交成功后,success后面

        var $form = $("#add-model-form");
    
        success: function (data) {
                    if (data.code == 0) {
                        // 修改成功,收回模态框
                        $("#addModal").modal('hide');
                        // 重置form
                        $form[0].reset();
                        // 销毁校验
                        $form.data('formValidation').destroy();
                        $form.data('formValidation', null);
                        // 重新初始化校验 
                        validate_model_form('#add-model-form');
                    }
    

    再次编辑时,就会重新校验

  • 相关阅读:
    Android Market google play store帐号注册方法流程 及发布应用注意事项【转载】
    cocos2d-x 调用第三方so文件
    ios cocos2d-x 多点触摸
    linux文件分割(将大的日志文件分割成小的)
    Linux 统计某个字符串出现的次数
    scapy基础-网络数据包结构
    mac 下idea光标问题
    mac ox终端显示 bogon的问题
    hibernate和mybatis的区别
    memcached知识点梳理
  • 原文地址:https://www.cnblogs.com/yoyoketang/p/15745490.html
Copyright © 2011-2022 走看看