jQuery Easyui Datagrid实现单行的上移下移及保存移动的结果


Posted in Javascript onAugust 15, 2016

1、实现行的上移、下移、

说明:

1.1 通过datagrid生成的表格有固定的格式,比如,表格div的class名是datagrid-view。比如每一行tr都有id和datagrid-row-index属性等。

1.2 在上移和下移以后,我们将移动以后的两行的id和datagrid-row-index属性也必须互换,这样能保证datagrid-row-index=0的行肯定是页面显示的表格的第一行,=1的是第二行等等。将来保存的时候,就是通过取这个属性值找某一行的数据的。

function move(isUp) {
var selections = $dg.datagrid('getSelections');
if(selections.length == 0){
return;
}
var $view = $('div.datagrid-view');
var index = $dg.datagrid('getRowIndex',selections[0]);
var $row = $view.find('tr[datagrid-row-index=' + index + ']');
if (isUp) {
$row.each(function(){
var prev = $(this).prev();
var prevId = prev.attr('id');
var prevDatagridRowIndex = prev.attr('datagrid-row-index');
var thisId = $(this).attr('id');
var thisDatagridRowIndex = $(this).attr('datagrid-row-index');
prev.length && $(this).insertBefore(prev);
$(this).attr('id',prevId);
$(this).attr('datagrid-row-index',prevDatagridRowIndex);
prev.attr('id',thisId);
prev.attr('datagrid-row-index',thisDatagridRowIndex);
});
} else {
$row.each(function(){
var next = $(this).next();
var nextId = next.attr('id');
var nextDatagridRowIndex = next.attr('datagrid-row-index');
var thisId = $(this).attr('id');
var thisDatagridRowIndex = $(this).attr('datagrid-row-index');
next.length && $(this).insertAfter(next);
$(this).attr('id',nextId);
$(this).attr('datagrid-row-index',nextDatagridRowIndex);
next.attr('id',thisId);
next.attr('datagrid-row-index',thisDatagridRowIndex);
});
}
}

2、保存移动的结果

说明:每一个tr包含若干个td,每个td都有field属性,即表格展示对象的相应属性名,例子中goodsId是我要展示的商品的主键。每个td下都包含一个div,通过层层

find找到这个div以后,值就得到了。

function nextStep() {
var arrayData = $dg.datagrid('getData').rows;
var $view = $('div.datagrid-view');
if(arrayData.length!=0){
saveIds = '';
for(var index=0;index<arrayData.length;index++){
var goodsId = $view.find('tr[datagrid-row-index=' + index + ']').find("td[field='goodsId']").find('div').html();
saveIds += goodsId;
if(index != arrayData.length-1){
saveIds += ',';
}
}
$.ajax({
url:'${pageContext.request.contextPath}/coupons/getTemplateId',
type:'post',
dataType:'json',
success:function(result){
window.location.href="${pageContext.request.contextPath}/coupons/tpl"+result+"?goodsId="+saveIds;
}
});
}
}

以上所述是小编给大家介绍的jQuery Easyui Datagrid实现单行的上移下移及保存移动的结果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js获取当前select 元素值的代码
Apr 19 Javascript
xml文档转换工具,附图表例子(hta)
Nov 17 Javascript
Javascript 实现图片无缝滚动
Dec 19 Javascript
JS简单模拟触发按钮点击功能的方法
Nov 30 Javascript
JavaScript实现简单的tab选项卡切换
Jan 05 Javascript
讲解JavaScript的Backbone.js框架的MVC结构设计理念
Feb 14 Javascript
JavaScript中数据类型转换总结
Dec 25 Javascript
jquery实现图片轮播器
May 23 jQuery
Kindeditor单独调用多图上传实例
Jul 31 Javascript
分析JS中this引发的bug
Dec 12 Javascript
vue 接口请求地址前缀本地开发和线上开发设置方式
Aug 13 Javascript
Vue 构造选项 - 进阶使用说明
Aug 14 Javascript
关于动态执行代码(js的Eval)实例详解
Aug 15 #Javascript
jQuery Ajax Post 回调函数不执行问题的解决方法
Aug 15 #Javascript
对js eval()函数的一些见解
Aug 15 #Javascript
详细解读Jquery各Ajax函数($.get(),$.post(),$.ajax(),$.getJSON())
Aug 15 #Javascript
js HTML5 Canvas绘制转盘抽奖
Sep 13 #Javascript
jQuery学习笔记之回调函数
Aug 15 #Javascript
纯css下拉菜单 无需js
Aug 15 #Javascript
You might like
php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍
2011/10/29 PHP
Thinkphp模板中使用自定义函数的方法
2012/09/23 PHP
PHP会话控制:Session与Cookie详解
2014/09/27 PHP
php+mysqli事务控制实现银行转账实例
2015/01/29 PHP
微信公众平台开发教程④ ThinkPHP框架下微信支付功能图文详解
2019/04/10 PHP
PHP实现简单用户登录界面
2019/10/23 PHP
纯JAVASCRIPT图表动画插件Highcharts Examples
2011/04/16 Javascript
利用NodeJS的子进程(child_process)调用系统命令的方法分享
2013/06/05 NodeJs
A标签触发onclick事件而不跳转的多种解决方法
2013/06/27 Javascript
jquery 页面滚动到底部自动加载插件集合
2014/01/31 Javascript
JavaScript获得url查询参数的方法
2015/07/02 Javascript
HTML5之WebSocket入门3 -通信模型socket.io
2015/08/21 Javascript
livereload工具实现前端可视化开发【推荐】
2016/12/23 Javascript
vue高德地图之玩转周边
2017/06/16 Javascript
Vue 中批量下载文件并打包的示例代码
2017/11/20 Javascript
微信小程序图片轮播组件gallery slider使用方法详解
2018/01/31 Javascript
javascript操作元素的常见方法小结
2019/11/13 Javascript
[01:25:33]完美世界DOTA2联赛PWL S3 INK ICE vs Magma 第二场 12.20
2020/12/23 DOTA
跟老齐学Python之重回函数
2014/10/10 Python
python leetcode 字符串相乘实例详解
2018/09/03 Python
python重试装饰器的简单实现方法
2019/01/31 Python
python通过nmap扫描在线设备并尝试AAA登录(实例代码)
2019/12/30 Python
Python求两个字符串最长公共子序列代码实例
2020/03/05 Python
解决import tensorflow as tf 出错的原因
2020/04/16 Python
Python实现电视里的5毛特效实例代码详解
2020/05/15 Python
使用Python下载抖音各大V视频的思路详解
2021/02/06 Python
澳大利亚便宜隐形眼镜购买网站:QUICKLENS Australia
2018/10/06 全球购物
介绍下static、final、abstract区别
2015/01/30 面试题
大学生就业策划书范文
2014/04/04 职场文书
校园学雷锋广播稿
2014/10/08 职场文书
给老师的一封感谢信
2015/01/20 职场文书
初中信息技术教学计划
2015/01/22 职场文书
2015年银行大堂经理工作总结
2015/04/24 职场文书
学校计划生育责任书
2015/05/09 职场文书
消防安全主题班会
2015/08/12 职场文书
springboot layui hutool Excel导入的实现
2022/03/31 Java/Android