python测试开发django-183.bootstrap-formvalidation重置校验的方法

前言

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');
                }

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

posted @   上海-悠悠  阅读(322)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2020-12-29 selenium+python自动化103-一闪而过的dialog如何定位
2019-12-29 jenkins学习3-Jenkins插件下载速度慢、安装失败
2019-12-29 jenkins学习2-首次输入密码后卡在空白页不加载
2019-12-29 jenkins学习1-docker快速搭建jenkins环境
2018-12-29 Linux学习5-CentOS安装Python3.6环境和pip3
点击右上角即可分享
微信分享提示