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 相关文章推荐
在Javascript里访问SharePoint列表数据的实现方法
May 22 Javascript
再JavaScript的jQuery库中编写动画效果的指南
Aug 13 Javascript
jQuery 获取跨域XML(RSS)数据的相关总结分析
May 18 Javascript
Javascript删除指定元素节点的方法
Jun 21 Javascript
web前端页面生成exe可执行文件的方法
Feb 08 Javascript
js实现全选反选不选功能代码详解
Apr 24 Javascript
JS中getElementsByClassName与classList兼容性问题解决方案分析
Aug 07 Javascript
layui原生表单验证的实例
Sep 09 Javascript
微信小程序 轮播图实现原理及优化详解
Sep 29 Javascript
vue+iview框架实现左侧动态菜单功能的示例代码
Jul 23 Javascript
在js文件中引入(调用)另一个js文件的三种方法
Sep 11 Javascript
js实现随机点名功能
Dec 23 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生成过去100年下拉列表的方法
2015/07/20 PHP
PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)
2016/09/11 PHP
PHP+Redis开发的书签案例实战详解
2019/07/09 PHP
JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合
2010/01/12 Javascript
JQuery从头学起第一讲
2010/07/04 Javascript
document.createElement()用法及注意事项(ff下不兼容)
2013/03/13 Javascript
基于jquery固定于顶部的导航响应浏览器滚动条事件
2014/11/02 Javascript
javascript实现避免页面按钮重复提交
2015/01/08 Javascript
JavaScript数据类型详解
2015/04/01 Javascript
深入学习JavaScript的AngularJS框架中指令的使用方法
2016/03/05 Javascript
javascript判断图片是否加载完成的方法推荐
2016/05/13 Javascript
使用JavaScript实现弹出层效果的简单实例
2016/05/31 Javascript
原生js实现ajax方法(超简单)
2016/09/20 Javascript
JS给Array添加是否包含字符串的简单方法
2016/10/29 Javascript
JS插件plupload.js实现多图上传并显示进度条
2016/11/29 Javascript
Bootstrap导航条的使用和理解3
2016/12/14 Javascript
基于js 各种排序方法和sort方法的区别(详解)
2018/01/03 Javascript
js+css实现打字效果
2020/06/24 Javascript
vue项目打包后上传至GitHub并实现github-pages的预览
2019/05/06 Javascript
仅用500行Python代码实现一个英文解析器的教程
2015/04/02 Python
Python打印斐波拉契数列实例
2015/07/07 Python
Python通过OpenCV的findContours获取轮廓并切割实例
2018/01/05 Python
python中实现将多个print输出合成一个数组
2018/04/19 Python
对tf.reduce_sum tensorflow维度上的操作详解
2018/07/26 Python
Python彻底删除文件夹及其子文件方式
2019/12/23 Python
selenium+python配置chrome浏览器的选项的实现
2020/03/18 Python
Osklen官方在线商店:巴西服装品牌
2019/04/25 全球购物
建筑设计学生的自我评价
2014/01/16 职场文书
副厂长岗位职责
2014/02/02 职场文书
《长城》教学反思
2014/02/14 职场文书
大四学生找工作的自荐信
2014/03/27 职场文书
施工现场安全管理制度
2015/08/05 职场文书
护士岗前培训心得体会
2016/01/08 职场文书
创业计划之特色精品店
2019/08/12 职场文书
nginx location优先级的深入讲解
2021/03/31 Servers
HTML页面滚动时部分内容位置固定不滚动的实现
2021/04/14 HTML / CSS