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 相关文章推荐
解析URI与URL之间的区别与联系
Nov 22 Javascript
JavaScript网页定位详解
Jan 13 Javascript
javascript中attribute和property的区别详解
Jun 05 Javascript
js树插件zTree获取所有选中节点数据的方法
Jan 28 Javascript
js实现索引图片切换效果
Nov 21 Javascript
Bootstrap表单布局样式源代码
Jul 04 Javascript
JS中with的替代方法与String中的正则方法详解
Dec 23 Javascript
jquery仿苹果的时间/日期选择效果
Mar 08 Javascript
详解用node.js实现简单的反向代理
Jun 26 Javascript
谈谈node.js中的模块系统
Sep 01 Javascript
Vue+Element自定义纵向表格表头教程
Oct 26 Javascript
vue组件vue-esign实现电子签名
Apr 21 Vue.js
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数据流应用的简单例子
2012/06/01 PHP
浅析SVN常见问题及解决方法
2013/06/21 PHP
PHP开发Apache服务器配置
2015/07/15 PHP
PHP实现的杨辉三角求解算法分析
2019/03/11 PHP
PHP添加PNG图片背景透明水印操作类定义与用法示例
2019/03/12 PHP
读jQuery之六 缓存数据功能介绍
2011/06/21 Javascript
玩转jQuery按钮 请告诉我你最喜欢哪些?
2012/01/08 Javascript
Jquery 动态循环输出表格具体方法
2013/11/23 Javascript
解释&&和||在javascript中的另类用法
2014/07/28 Javascript
限制文本框只能输入数字||只能是数字和小数点||只能是整数和浮点数
2016/05/27 Javascript
JS监控关闭浏览器操作的实例详解
2017/09/12 Javascript
vue登录路由验证的实现
2017/12/13 Javascript
JavaScript设计模式之原型模式分析【ES5与ES6】
2018/07/26 Javascript
vuejs实现ready函数加载完之后执行某个函数的方法
2018/08/31 Javascript
用Vue.js方法创建模板并使用多个模板合成
2019/06/28 Javascript
JS Math对象与Math方法实例小结
2019/07/05 Javascript
Vue使用lodop实现打印小结
2019/07/06 Javascript
vue服务端渲染操作简单入门实例分析
2019/08/28 Javascript
在Express中提供静态文件的实现方法
2019/10/17 Javascript
python访问纯真IP数据库的代码
2011/05/19 Python
浅谈python字典多键值及重复键值的使用
2016/11/04 Python
python中文分词,使用结巴分词对python进行分词(实例讲解)
2017/11/14 Python
python实现公司年会抽奖程序
2019/01/22 Python
解决Python列表字符不区分大小写的问题
2019/12/19 Python
keras中的卷积层&池化层的用法
2020/05/22 Python
Django+Uwsgi+Nginx如何实现生产环境部署
2020/07/31 Python
python实现文件分片上传的接口自动化
2020/11/19 Python
印尼最大的网上书店:Gramedia.com
2018/09/13 全球购物
彪马香港官方网上商店:PUMA香港
2020/12/06 全球购物
办理信用卡工作证明
2014/01/11 职场文书
工商企业管理应届生求职信
2014/05/04 职场文书
小学优秀教师先进事迹材料
2014/12/16 职场文书
会议通知格式范文
2015/04/15 职场文书
初中班主任培训心得体会
2016/01/07 职场文书
文书工作总结(范文)
2019/07/11 职场文书
javascript中Set、Map、WeakSet、WeakMap区别
2022/12/24 Javascript