JEECG 表单校验采用的是validform,默认的校验提示需要占用页面布局,提示效果较传统。jeecg这个自定义的校验提示风格,不占用页面布局,提示效果也更美观,简单易用,让表单看起来更漂亮!!!此文章绝对福利贴。。。

一、【初体验】JEECG validform 新版校验提示风格如图:

二、【快速使用】表单校验新版提示如何使用呢?

场景一: 如果你的jeecg已经升级到最新版 3.7.8+,那你可以很简单的使用新版提示风格

【使用方法】 JEECG 3.7.8及以上版本使用方法:

t:formvalid标签设置 tiptype="6"

<t:formvalid formid="formobj2" tiptype="6" >

场景二: 如果你的jeecg未升级到最新版 3.7.8+,那你采用以下方法进行手工升级...

方式一:【UI标签用法】JEECG 3.7.7及以下版本formvalid标签升级方法如下:

【1】、增加提示框样式文件(/src/main/webapp/plug-in/Validform/css/tiptype.css)

/* * css: 表单校验提示 * ----------*/

.poptip{z-index:1000;position: absolute;top: 20px;left:20px;padding: 6px 10px 6px;*padding: 7px 10px 5px;line-height: 16px;color: #fff;font-size: 12px;background-color: #B94A48;border: solid 1px #B94A48;border-radius: 2px;box-shadow: 0 0 3px #ddd;}

.poptip-arrow{position: absolute;overflow: hidden;font-style: normal;font-family: simsun;text-shadow:0 0 2px #ccc;}

.poptip-arrow em,.poptip-arrow i{position: absolute;left:0;top:0;font-style: normal;}

.poptip-arrow em{color: #B94A48;}

.poptip-arrow i{color: #B94A48;text-shadow:none;}

.poptip-arrow-top,.poptip-arrow-bottom{height: 6px;width: 12px;left:12px;margin-left:-6px;}

.poptip-arrow-left,.poptip-arrow-right{height: 12px;width: 6px;top: 12px;margin-top:-6px;}

.poptip-arrow-top{top: -6px;}

.poptip-arrow-top em{top: -1px;}

.poptip-arrow-top i{top: 0px;}

.poptip-arrow-bottom{bottom: -6px;}

.poptip-arrow-bottom em{top: -8px;}

.poptip-arrow-bottom i{top: -9px;}

.poptip-arrow-left{left:-6px;}

.poptip-arrow-left em{left:1px;}

.poptip-arrow-left i{left:2px;}

.poptip-arrow-right{right:-6px;}

.poptip-arrow-right em{left:-6px;}

.poptip-arrow-right i{left:-7px;}

  

【2】、增加提示框相关js(src/main/webapp/plug-in/Validform/js/tiptype.js)

//提示信息

function validationMessage(obj, Validatemsg) {

try {

removeMessage(obj);

obj.focus();

var $poptip_error = $('<div class="poptip"><span class="poptip-arrow poptip-arrow-top"><em>◆</em></span>' + Validatemsg + '</div>').css("left", obj.offset().left + 'px').css("top", obj.offset().top + obj.parent().height() + 5 + 'px')

$('body').append($poptip_error);

if (obj.hasClass('form-control') || obj.hasClass('ui-select')) {

obj.parent().addClass('has-error');

}

if (obj.hasClass('ui-select')) {

$('.input-error').remove();

}

obj.change(function () {

if (obj.val()) {

removeMessage(obj);

}

});

if (obj.hasClass('ui-select')) {

$(document).click(function (e) {

if (obj.attr('data-value')) {

removeMessage(obj);

}

e.stopPropagation();

});

}

return false;

} catch (e) {

alert(e)

}

}

//移除提示

function removeMessage(obj) {

obj.parent().removeClass('has-error');

$('.poptip').remove();

$('.input-error').remove();

}

  

【3】、formvalid标签代码逻辑集成(org/jeecgframework/tag/core/easyui/FormValidationTag.java)

FormValidationTag代码修改:扩展tiptype值为6时展示该效果

3.1、doEndTag()方法中开始位置,引入(1)(2)中的css 和js(tiptype值为6时引入)

if("6".equals(tiptype)){

sb.append("<link rel=\"stylesheet\" href=\"plug-in/Validform/css/tiptype.css\" type=\"text/css\"/>");

sb.append("<script type=\"text/javascript\" src=\"plug-in/Validform/js/tiptype.js\"></script>");

}

3.2、doEndTag()方法中找到tiptype针对不同值的处理逻辑,添加tiptype值为6时的逻辑处理

else if("6".equals(tiptype)){

sb.append("tiptype:function(msg,o,cssctl){");

sb.append("if(o.type==3){");

sb.append(" ValidationMessage(o.obj,msg);");

sb.append("}else{");

sb.append("removeMessage(o.obj);");

sb.append("}");

sb.append("},");

}

  

方式二:【原生态写法】不使用标签validform提交表单,升级方法如下

【1】、页面引入2中的css和js

<link rel="stylesheet" href="plug-in/Validform/css/tiptype.css" type="text/css"/>

<script type="text/javascript" src="plug-in/Validform/js/tiptype.js"></script>

【2】、validform组件自定义tiptype,validform组件调用时设置tiptype如下:

tiptype:function(msg,o,cssctl){

if(o.type==3){

validationMessage(o.obj,msg);

}else{

removeMessage(o.obj);

}

}

JEECG 3.7.8 新版表单校验提示风格使用&升级方法(validform 新风格漂亮,布局简单)的更多相关文章

  1. 表单编辑时el-form的validate方法执行无效,阻塞代码运行 - Element UI踩坑记录

    今天在用element-ui写管理后台需求时,遇到一个奇怪的问题 一个正常带校验的表单,在新增列表数据时表单校验功能正常: 但是在新增之后再去编辑数据时,表单校验却失效了,甚至阻塞了后续的代码执行,控 ...

  2. 利用jquery.validate以及bootstrap的tooltip开发气泡式的表单校验组件

    表单校验是页面开发中非常常见的一类需求,相信每个前端开发人员都有这方面的经验.网上有很多成熟的表单校验框架,虽然按照它们默认的设计,用起来没有多大的问题,但是在实际工作中,表单校验有可能有比较复杂的个 ...

  3. AngularJS 1.2.x 学习笔记(表单校验篇)

    https://my.oschina.net/cokolin/blog/526911 摘要: 本文首发于 blog.csdn.net/vipshop_ebs/article/details/39472 ...

  4. angularJs表单校验(超级详细!!!)

    html代码 <!DOCTYPE html> <html ng-app="angularFormCheckModule"> <head> < ...

  5. bootstrap+jQuery.validate表单校验

    谈谈表单校验 这大概是一种惯例,学习前台后台最开始接触的业务都是用户注册和登录.现在社会坚持以人为本的理念,在网站开发过程同样如此.User是我们面对较多的对象,也是较核心的对象.最开始的用户注册和登 ...

  6. 关于jQuery表单校验的应用

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

  7. php 表单校验函数库(判断email格式是否正确、http地址是否合法有效、手机号码是否合法)

    /** * 表单校验函数库 */ /** * 判断email格式是否正确 * @param $email */ function is_email($email) { return strlen($e ...

  8. 关于jQuery表单校验

    <style> .red{border: 1px solid red;} .wrong-tip{color: red;} </style> <form action=&q ...

  9. jQuery.validate表单校验+bootstrap

    谈谈表单校验 这大概是一种惯例,学习前台后台最开始接触的业务都是用户注册和登录.现在社会坚持以人为本的理念,在网站开发过程同样如此.User是我们面对较多的对象,也是较核心的对象.最开始的用户注册和登 ...

随机推荐

  1. MyCP课下作业

    任务详情 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为 ...

  2. Vue --- :is

    1.1 基本示例 <div id="app"> <!-- template slot transition --> <input type=" ...

  3. 快速简单搭建wordpress平台

      公司一直没有文档平台,于是想弄一个,弄过github平台的,但是都没用上,虽然这个搭建出来也没用上,还是花了时间才弄出来的,也许下次有用的时候,可以拿来就用   安装Wordpress的基础环境要 ...

  4. GitHub Pages:静态站点托管服务(待补充)

    不管是 react 还是 vue 项目路由都必须使用 hash 方式,否则页面打不开,切记!!! 如果使用的是 vue-cli 3 创建项目,那么你要在根目录创建 vue.config.js 文件,并 ...

  5. js通過name获取input框输入值

    var account = $("input[name='account']").val();//获取input框输入值

  6. mongdb 报错“Cannot connect to the MongoDB at 192.179.1.6:27017. Error: Network is unreachable.”

    1.命令行输入talnet 192.179.1.6 27017 看能拼通不 2.防火墙添加入站规则  27017 3.修改mongdb配置文件 mongodb.config dbpath=c:\Mon ...

  7. [转]微软商店 打开就显示无法加载该页面 代码0x80131500?

    在某博客看到的方法,供参考,可以尝试一下,我的也是这么解决的 1.打开“运行”输入 inetcpl.cpl (“WINDOWS”+“R”键,输入 inetcpl.cpl亦可) 2.点开高级往下拉,勾上 ...

  8. 更改系统盘符后DFS无法复制故障处理

    DFS是微软的分布式文件系统,其中有命名空间和复制功能,我们有文件服务器,平时主要使用的是复制功能,保持文件服务器的数据实时同步,这一台我觉得还挺好用的,可以不借助备份软件就可以实现2台文件服务器的数 ...

  9. windows下安装hadoop

    环境 windows7 64位 JDK环境已经配置好(测试的是jdk1.8.0_191) hadoop体现结构: 下载Hadoop,地址 http://archive.apache.org/dist/ ...

  10. css 优化

    // 注: 以下内容大量借阅自<<Webkit技术内幕>>--朱永盛(14年出版的) , 很多内容可能早已更新 , 因此个人并不能确定论述是否正确.部分摘录内容有删减 , 目录 ...