1:ajax请求数据到页面
function GetWorkSpaceList()
{
GetServerData("get", GetEnterpriseUrl() + "Organization/GetOrganAll",
{
userID: GetUserID()
}, function (d) {
if (d.status == -1) {
artDialog.alert("系统提示:" + d.message);
return;
}
console.log(d.data);
$("#ulWorkSpace").html("");
var data = "";
for(i=0;i<d.data.length;i++)
{
var trName ="tr_" + Math.round(Math.random() * 999) + 3000;
data += "<tr id='" + trName + "' class=\"work_righttr\" OrganType=\"" +d.data[i].OrganType+ "\" EnterpriseID=\"" +d.data[i].EnterpriseID+ "\" ><td class=\"work_right_2\">";
data += "<img src=\"../images/"; if (d.data[i].OrganType == 1) //企业
data += "QiYe.png";
else if(d.data[i].OrganType == 2) //项目
data += "GongCheng.png";
else if(d.data[i].OrganType == 3) //医院
data += "YiYuan.png";
else if(d.data[i].OrganType == 4) //学校
data += "XueXiao.png";
else if(d.data[i].OrganType == 5) //宗教
data += "ZongJiao.png";
else if(d.data[i].OrganType == 6) //团队
data += "TuanDui.png";
else if(d.data[i].OrganType == 7) //政府机构
data += "ZhengFu.png"; data +="\" style=\" width:30px; height:30px; margin-right:10px; margin-bottom:5px;\">";
if (d.data[i].StatusName == null || d.data[i].StatusName == "")
data += d.data[i].EnterpriseName;
else
data += d.data[i].EnterpriseName + "<span style='color:red;'>(" + d.data[i].StatusName + ")</span>"; data += "</td><td class=\"work_right_2i CloseWorkSpace\" trName=\"" +trName+ "\" OrganType=\"" +d.data[i].OrganType+ "\" EnterpriseID=\"" +d.data[i].EnterpriseID+ "\" ><img src=\"../images/delete.png\" style=\"margin-right:5px;\" />关闭</td>";
data += "<td class=\"work_right_2i GoWorkSpace\" OrganType=\"" +d.data[i].OrganType+ "\" EnterpriseID=\"" +d.data[i].EnterpriseID+ "\" style=\" width:11%;\"><img src=\"../images/right.png\" style=\"margin-right:5px;\" />进入</td>";
data += "<td class=\"work_right_2i \" OrganType=\"" +d.data[i].OrganType+ "\" EnterpriseID=\"" +d.data[i].EnterpriseID+ "\" style=\" width:11%;\"><img class=\"moveUp\" src=\"../images/moveUp.png\" style=\"margin-right:10px;\" /><img class=\"moveDown\" src=\"../images/moveDown.png\" style=\"margin-right:10px;\" /></td>";
data += "</tr>";
}
$("#ulWorkSpace").html(data); });
}

如图所示:

2:用事件委托写上移下移事件,代码如下

//点击上移和下移按钮
$(document).on('click','.moveUp',function(){ //将这一排的tr向上移动
var objParentTR = $(this).parent().parent();
var prevTR = objParentTR.prev();
if(prevTR.length > 0) {
prevTR.insertAfter(objParentTR);
} //循环每一个tr并获取其所需要的值
var trList=[];
var len=$('tr.work_righttr').length; for(var i=0;i<len;i++){
trList[i]={};
trList[i].OrganID= $('tr.work_righttr').eq(i).attr('EnterpriseID');
trList[i].OrganType= $('tr.work_righttr').eq(i).attr('OrganType');
trList[i].OrganSort= i-1;
} //提交接口
GetServerData("post", GetEnterpriseUrl() + "/Organization/SetOrganSort", { UserID: GetUserID(), OrganListJson: JSON.stringify(trList) }, function (d) {
if (d.status == -1) {
artDialog.alert("系统提示:" + d.message);
return;
}
//重新刷新列表
GetWorkSpaceList();
}); }); $(document).on('click','.moveDown',function(){ //将img所在的一行tr向下移动
var objParentTR = $(this).parent().parent();
var nextTR = objParentTR.next();
if(nextTR.length > 0) {
nextTR.insertBefore(objParentTR);
} //循环每一个tr并获取其所需要的值
var trList=[];
var len=$('tr.work_righttr').length;
for(var i=0;i<len;i++){
trList[i]={};
trList[i].OrganID= $('tr.work_righttr').eq(i).attr('EnterpriseID');
trList[i].OrganType= $('tr.work_righttr').eq(i).attr('OrganType');
trList[i].OrganSort= i+1;
} //提交接口
GetServerData("post", GetEnterpriseUrl() + "/Organization/SetOrganSort", { UserID: GetUserID(), OrganListJson: JSON.stringify(trList) }, function (d) {
if (d.status == -1) {
artDialog.alert("系统提示:" + d.message);
return;
}
//重新刷新列表
GetWorkSpaceList();
}); });

就是如此简单,欢迎观看!!!

05_jquery 操作table使tr(数据)整行上移下移的更多相关文章

  1. jQuery实现表格行上移下移和置顶

    jQuery实现表格行上移下移和置顶 我们在操作列表数据的时候,需要将数据行排列顺序进行调整,如上移和下移行,将行数据置顶等,这些操作都可以在前端通过点击按钮来完成,并且伴随着简单的动态效果,轻松实现 ...

  2. 原生JS操作 table object HTMLTableSectionElement 对象,获取行数

    <tbody id="infoTab"> <tr class="fomat"> <td class="blank&quo ...

  3. js操作table中tr的顺序,实现上移下移一行的效果

    总体思路是在table外部加个div,修改div的innerHtml实现改变tr顺序的效果 具体思路是 获取当前要移动tr行的rowIndex,在table中删除掉,然后循环table的rows,到了 ...

  4. js操作table表格导出数据到excel方法

    js导出excel资料很少,网上也找了很多,基本都不能用,要么只能是IE用,还必须要权限,这是非常不好的.后来到github上找到table2excel.js,虽然可以用,但仍然对IE支持不够,也算不 ...

  5. 如何快速选中某单元格所在的整行或整列 Excel教程

    我们可以使用快捷键的操作来快速选中B3单元格所在的整行或整列,操作方法如下,请大家参阅! 一.正规的快捷键操作 ①快速选中整行 按下键盘上的 Shift Space 即同时按下键盘上的Shift 空格 ...

  6. jQuery操作Table tr td常用的方法

    虽然现在DIV+CSS进行页的布局大行其道,但是很多地方使用table还是有很多优势,用table展示数据是比较方便的,下面汇总了jQuery操作Table tr td常用的方法,熟记这些操作技巧,下 ...

  7. 汇总常用的jQuery操作Table tr td方法

    虽然现在DIV+CSS进行页的布局大行其道,但是很多地方使用table还是有很多优势,用table展示数据是比较方便的,下面汇总了jQuery操作Table tr td常用的方法,熟记这些操作技巧,下 ...

  8. jQuery操作table数据上移、下移和置顶

    jQuery 操作table中的tr换行的步骤如下: 1.获取当前tr var $tr = $(this).parents("tr"); 2.移动tr //上移 $tr.prev( ...

  9. js在table指定tr行上或底下添加tr行

    js在table指定tr行上或下面添加tr行 function onAddTR(trIndex)         {             var tb = document.getElementB ...

随机推荐

  1. python基础之逻辑题(3)

    Python基础之逻辑题(3) 1.编写一个函数实现将IP地址转换成一个整数 2.求结果:---lambda 3.求a的结果 4.求下面nums的输出 5.求下面片段的输出 6.写出程序的结果:--- ...

  2. echarts细节的修改(2):矩形数图,柱状图,折线图,雷达图等

    1.矩形数图的配置,是直接拿饼图的配置 然后将type换成treemap. 修改类型 option.series.type = 'treemap'; 关闭面包屑导航 option.series.bre ...

  3. JavaScript 字符串转为数字

    js中字符串转为数字主要4种,分别为转换函数,强制转换,js变量弱类型转换,正则表达式. 1.转换函数 JS中提供了两个转换函数parseInt()和parseFloat(),parseInt()将值 ...

  4. C#循环语句练习(三)

    for循环拥有两类:一.穷举:把所有可能的情况都走一遍,使用if条件筛选出来满足条件的情况. (1).羽毛球拍15元,球3元,水2元.200元每种至少一个,有多少可能. (2).百鸡百钱:公鸡2文钱一 ...

  5. Python--day72--Cookie和Session内容回顾

    1. Cookie是什么 保存在浏览器端的键值对 为什么要有Cookie? 因为HTTP请求是无状态的 Cookie的原理? 服务端可以在返回响应的时候 做手脚 在浏览器上写入键值对(Cookie) ...

  6. Hammersley-Clifford定理证明

    Proof of Hammersley-Clifford TheoremProof of Hammersley-Clifford Theorem依赖知识定义1定义2证明过程反向证明(吉布斯分布=> ...

  7. C# 判断两条直线距离

    本文告诉大家获得两条一般式直线距离 一般式的意思就是 Ax+By+C=0" role="presentation">Ax+By+C=0Ax+By+C=0 如果有两个 ...

  8. 【30.43%】【codeforces 746C】Tram

    time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...

  9. springBoot中“MockMvc”的进行Controller进行单元测试:application/octet-stream' not supported问题小结

    解决方案:这个问题其实是Content-type的问题,只需要在相关的代码加入相关Content-type中就可以了,代码如下: mockMvc.perform(post("/user&qu ...

  10. es6笔记 day2---数组热闹的循环

    数组: ES5里面新增一些东西 循环 : 1.for for(let i =0;i<arr.length;i++) 2.while arr.forEach() arr.map() arr.fil ...