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 相关文章推荐
JavaScript是否可实现多线程  深入理解JavaScript定时机制
Dec 22 Javascript
JS关闭窗口与JS关闭页面的几种方法小结
Dec 17 Javascript
jquery读取xml文件实现省市县三级联动的方法
May 29 Javascript
JS模拟实现Select效果代码
Sep 24 Javascript
JavaScript获取各大浏览器信息图示
Nov 20 Javascript
jQuery旋转木马式幻灯片轮播特效
Dec 04 Javascript
基于jquery实现的鼠标悬停提示案例
Dec 11 Javascript
详解vue-cil和webpack中本地静态图片的路径问题解决方案
Sep 27 Javascript
AngularJs 最新验证手机号码的实例,成功测试通过
Nov 26 Javascript
动态加载权限管理模块中的Vue组件
Jan 16 Javascript
vue.js 双层嵌套for遍历的方法详解, 类似php foreach()
Sep 07 Javascript
JS实现的排列组合算法示例
Jul 16 Javascript
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
jquery 学习之二 属性(类)
2010/11/25 Javascript
初识JQuery 实例一(first)
2011/03/16 Javascript
js选取多个或单个元素的实现代码(用class)
2012/08/22 Javascript
在JavaScript中实现类的方式探讨
2013/08/28 Javascript
JavaScript字符串对象charAt方法入门实例(用于取得指定位置的字符)
2014/10/17 Javascript
jQuery的图片滑块焦点图插件整理推荐
2014/12/07 Javascript
node.js中的fs.ftruncate方法使用说明
2014/12/15 Javascript
简单理解JavaScript中的封装与继承特性
2016/03/19 Javascript
js无法获取到html标签的属性的解决方法
2016/07/26 Javascript
JavaScript实现DOM对象选择器
2016/09/24 Javascript
详解Vue2.x-directive的学习笔记
2017/07/17 Javascript
vue 实现数字滚动增加效果的实例代码
2018/07/06 Javascript
vue2.0项目集成Cesium的实现方法
2019/07/30 Javascript
详解Node.js使用token进行认证的简单示例
2020/05/25 Javascript
vue表单验证之禁止input输入框输入空格
2020/12/03 Vue.js
Python连接MySQL并使用fetchall()方法过滤特殊字符
2016/03/13 Python
浅谈python中copy和deepcopy中的区别
2017/10/23 Python
Python配置虚拟环境图文步骤
2019/05/20 Python
Python通过VGG16模型实现图像风格转换操作详解
2020/01/16 Python
利用CSS3实现折角效果实例源码
2016/09/28 HTML / CSS
李维斯德国官方网上商店:Levi’s德国
2016/09/10 全球购物
YSL Beauty加拿大官方商城:圣罗兰美妆加拿大
2017/05/15 全球购物
MCAKE蛋糕官方网站:一直都是巴黎的味道
2018/02/06 全球购物
什么是典型的软件三层结构?软件设计为什么要分层?软件分层有什么好处?
2012/03/14 面试题
网络教育毕业生自我鉴定
2013/10/10 职场文书
报表员工作失误检讨书范文
2014/09/19 职场文书
交通事故和解协议书
2014/09/25 职场文书
2014年幼儿园安全工作总结
2014/11/10 职场文书
党员干部廉洁自律承诺书
2015/04/28 职场文书
学校捐书活动总结
2015/05/08 职场文书
党员干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
医护人员继续教育学习心得体会
2016/01/19 职场文书
公司财务制度:成本管理控制制度模板
2019/11/19 职场文书
浅谈react useEffect闭包的坑
2021/06/08 Javascript
Python函数对象与闭包函数
2022/04/13 Python
前端使用svg图片改色实现示例
2022/07/23 HTML / CSS