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 弹出窗口中是否显示地址栏的实现代码
Apr 14 Javascript
JQuery对checkbox操作 (循环获取)
May 20 Javascript
js对象与打印对象分析比较
Apr 23 Javascript
js中cookie的添加、取值、删除示例代码
Oct 21 Javascript
浅析JS中document对象的一些重要属性
Mar 06 Javascript
JavaScript中点击事件的写法
Jun 28 Javascript
Node.js笔记之process模块解读
May 31 Javascript
动态内存分配导致影响Javascript性能的问题
Dec 18 Javascript
ES6入门教程之变量的解构赋值详解
Apr 13 Javascript
vue实现动态按钮功能
May 13 Javascript
Express结合Webpack的全栈自动刷新
May 23 Javascript
jQuery操作attr、prop、val()/text()/html()、class属性
May 23 jQuery
关于动态执行代码(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使用event扩展的io复用测试的示例
2020/10/20 PHP
window.open被浏览器拦截后的自定义提示效果代码
2007/11/19 Javascript
看了就知道什么是JSON
2007/12/09 Javascript
扩展javascript的Date方法实现代码(prototype)
2010/11/20 Javascript
js字符编码函数区别分析
2011/12/28 Javascript
全面解析标签页的切换方式
2016/08/21 Javascript
Bootstrap基本组件学习笔记之面板(14)
2016/12/08 Javascript
JS绘制微信小程序画布时钟
2016/12/24 Javascript
详解Nodejs之静态资源处理
2017/06/05 NodeJs
解决淘宝cnpm 安装后cnpm不是内部或外部命令的问题
2018/05/17 Javascript
详解关于React-Router4.0跳转不置顶解决方案
2019/05/10 Javascript
layui 上传插件 带预览 非自动上传功能的实例(非常实用)
2019/09/23 Javascript
vue设置默认首页的操作
2020/08/12 Javascript
vue用elementui写form表单时,在label里添加空格操作
2020/08/13 Javascript
解决antd Form 表单校验方法无响应的问题
2020/10/27 Javascript
vue 全局封装loading加载教程(全局监听)
2020/11/05 Javascript
[01:45]DOTA2新英雄“神谕者”全方位展示
2014/11/21 DOTA
[01:50]《我与DAC》之玩家:iG夺冠时的那面红旗
2018/03/29 DOTA
Python的Bottle框架中实现最基本的get和post的方法的教程
2015/04/30 Python
Python的标准模块包json详解
2017/03/13 Python
python通过elixir包操作mysql数据库实例代码
2018/01/31 Python
Django中的Signal代码详解
2018/02/05 Python
Python读取视频的两种方法(imageio和cv2)
2018/04/15 Python
pytorch 在sequential中使用view来reshape的例子
2019/08/20 Python
历史系自荐信范文
2013/12/24 职场文书
村官工作鉴定评语
2014/01/27 职场文书
西安交大自主招生自荐信
2014/01/27 职场文书
幼儿园英语教学反思
2014/01/30 职场文书
文明寝室标语
2014/06/13 职场文书
2014年幼儿园重阳节活动方案
2014/09/16 职场文书
小石潭记导游词
2015/02/03 职场文书
校长个人总结
2015/03/03 职场文书
护士自荐信范文
2015/03/25 职场文书
2016年情人节问候语
2015/11/11 职场文书
Python中使用Lambda函数的5种用法
2021/04/01 Python
Vue.js 带下拉选项的输入框(Textbox with Dropdown)组件
2021/04/17 Vue.js