jquery easyui dataGrid动态改变排序字段名的方法


Posted in Javascript onMarch 02, 2017

jQuery easyui dataGrid 动态改变排序字段名,一般情况下,在使用的时候,我们会点击相应字段进行排序,这里以JAVA为例,后端的实体类字段有可能和数据库的字段不一致;

如:实体类中的属性为userName,前台filed="userName"而数据库的字段为user_name,这个时候如果把userName设置为排序列,然后去进行点击,就会抛出异常,因为dataGrid在排序的时候会以filed="userName"中的字段名为排序字段;

问题:

怎么把userName和数据库中的user_name进行做映射

解决方案:

1:在后台服务器端对前台传入的排序字段进行判断,并且手工进行映射为数据库中的字段名;

             优点:安全、数据库字段不会暴露在前台HTML页面中;

             缺点:后台代码中会出现很多的字段映射判断;

2:在前台点击排序字段列的时候做判断,通过JS脚本在前台页面判断进行映射为数据库中的字段名;

             优点:方便,不需要修改服务器端代码

             缺点:不安全,数据库真实字段名会暴露在HTML页面中;            

  注意:如果对安全性要求比较高建议选择第一种;

这里采用第二种方式,实现如下:

/** 
 *在点击排序字段时,改变传入后台的字段 
 *param对应onBeforeLoad事件的参数 
 *map自定义的字段映射Map 
 */ 
onSortColumn=function(param,map){ 
  //取出map中字段的映射关系值 
  var fieldSort=map[param.sort]; 
  if(fieldSort!='' && fieldSort!=undefined){ 
    //设置新的排序字段名,设置完之后,发送请求时一并会发送到服务端 
    param.sort=fieldSort; 
  } 
}

使用方法:

//创建Map 
var map = new Map(); 
//为map添加值;key:对应filed="userName"中的字段名;value:对应数据库的字段 
map['userName']='user_name'; 
 
$('#datagrid').datagrid({ 
  onBeforeLoad:function(param){ 
    onSortColumn(param,map); 
  } 
});

以上所述是小编给大家介绍的jquery easyui dataGrid动态改变排序字段名的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
不错的一个日期输入 动态
Nov 06 Javascript
jQuery使用手册之一
Mar 24 Javascript
JavaScript自定义DateDiff函数(兼容所有浏览器)
Mar 01 Javascript
js实现点击文本框显示日期选择器特效代码分享
May 21 Javascript
浅析JavaScript中浏览器的兼容问题
Apr 19 Javascript
angularJS Provider、factory、service详解及实例代码
Sep 21 Javascript
bootstrap 表单验证使用方法
Jan 11 Javascript
浅谈React组件之性能优化
Mar 02 Javascript
javascript将非数值转换为数值
Sep 13 Javascript
微信小程序实现用table显示数据库反馈的多条数据功能示例
May 07 Javascript
javascript异步编程的六种方式总结
May 17 Javascript
jQuery实现王者荣耀手风琴效果
Jan 17 jQuery
JavaScript正则替换HTML标签功能示例
Mar 02 #Javascript
如何正确理解javascript的模块化
Mar 02 #Javascript
jquery实现左右滑动式轮播图
Mar 02 #Javascript
如何写好你的JavaScript【推荐】
Mar 02 #Javascript
js前端日历控件(悬浮、拖拽、自由变形)
Mar 02 #Javascript
JS操作input标签属性checkbox全选的实现代码
Mar 02 #Javascript
JavaScript正则获取地址栏中参数的方法
Mar 02 #Javascript
You might like
PHP中array_map与array_column之间的关系分析
2014/08/19 PHP
php浏览历史记录的方法
2015/03/10 PHP
在WordPress中使用PHP脚本来判断访客来自什么国家
2015/12/10 PHP
JQuery+CSS提示框实现思路及代码(纯手工打造)
2013/05/07 Javascript
javascript对下拉列表框(select)的操作实例讲解
2013/11/29 Javascript
JS版的date函数(和PHP的date函数一样)
2014/05/12 Javascript
js中string转int把String类型转化成int类型
2014/08/13 Javascript
在HTML中插入JavaScript代码的示例
2015/06/03 Javascript
jQuery插件实现无缝滚动特效
2015/11/24 Javascript
BootStrap扔进Django里的方法详解
2016/05/13 Javascript
jquery层级选择器(匹配父元素下的子元素实现代码)
2016/09/05 Javascript
利用imgareaselect辅助后台实现图片上传裁剪
2017/03/02 Javascript
Vuex之理解Store的用法
2017/04/19 Javascript
Bootstrap Table使用整理(一)
2017/06/09 Javascript
mapboxgl实现带箭头轨迹线的代码
2021/01/04 Javascript
[05:04]完美世界携手游戏风云打造 卡尔工作室地图界面篇
2013/04/23 DOTA
[01:02:25]2014 DOTA2华西杯精英邀请赛 5 24 iG VS DK
2014/05/26 DOTA
[07:26]2015国际邀请赛第二日TOP10集锦
2015/08/06 DOTA
[50:05]VGJ.S vs OG 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
Python实现批量将word转html并将html内容发布至网站的方法
2015/07/14 Python
详解Python Socket网络编程
2016/01/05 Python
Python连接MySQL并使用fetchall()方法过滤特殊字符
2016/03/13 Python
Python中import机制详解
2017/11/14 Python
用Python实现读写锁的示例代码
2018/11/05 Python
PyQt5实现QLineEdit添加clicked信号的方法
2019/06/25 Python
用python3 返回鼠标位置的实现方法(带界面)
2019/07/05 Python
python 根据字典的键值进行排序的方法
2019/07/24 Python
如何将 awk 脚本移植到 Python
2019/12/09 Python
python爬虫要用到的库总结
2020/07/28 Python
Python从MySQL数据库中面抽取试题,生成试卷
2021/01/14 Python
python中用Scrapy实现定时爬虫的实例讲解
2021/01/18 Python
加拿大最大的箱包及旅游配件零售商:Bentley Leathers
2017/07/19 全球购物
医院搬迁方案
2014/06/14 职场文书
导师对论文的学术评语
2015/01/04 职场文书
小学班主任工作总结2015
2015/04/07 职场文书
党风廉洁教育心得体会
2016/01/20 职场文书