HTML:
<button class="transfer ups">批量上移</button> <button class="transfer downs">批量下移</button>
<tr id="tr_{{ $v["id"] }}" data-id="{{ $v["id"] }}"><td><input type="checkbox" data-key={{$k}} name="sort" value="{{ $v["id"] }}" @if($v['fr_epg_status'] == Dictionary::getDictIdByKey('db.desktop.screen.status.offline')) disabled="true" @else class="onlines" @endif ></td>

</tr>

jquery:
$(function(){
//默认刷新后设置上次移动的选中值var screenKey = localStorage.getItem("dmsScreen"+id);if(screenKey!=undefined) {screenKey = screenKey.split(",");$.each(screenKey,function(index,value){$("input[name='sort'][value='"+value+"']").attr("checked", true);});}
//批量上移下移
//根据下标$(".ups,.downs").click(function () {var data = [];var keyList = [];var arrayList = [];var checkedList = [];var inputChecked = $("input:checkbox[name='sort']:checked");var leng = inputChecked.length;if(leng>0) {var onlines = $(".onlines");var onlinesLength = onlines.length;onlines.each(function (k, v) {arrayList[k] = $(this).val();});//取所选的位置inputChecked.each(function (k, v) {keyList[k] = $(this).attr("data-key");checkedList[k] = $(this).val();});console.log(keyList);var className = $(this).hasClass("ups");if (className) {if ($.inArray("0", keyList) != -1) {alert('不可上移');return false;}inputChecked.each(function (i) {var key = $(this).attr("data-key");var tmp = arrayList[key - 1];data[[key - 1]] = arrayList[key - 1] = arrayList[key];data[key] = arrayList[key] = tmp;});} else {if ($.inArray(String(onlinesLength - 1), keyList) != -1) {alert('不可下移');return false;}for (var i = leng - 1; i >= 0; i--) {var v = keyList[i];var t = v * 1 + 1 * 1;var tmp = arrayList[t];data[t] = arrayList[t] = arrayList[v];data[v] = arrayList[v] = tmp;}}$.post(DMSObj.baseUrl + 'admin/ajax/screensort', {"_token": "{{csrf_token()}}",data: data}, function (result) {if (result.error_code != 0) {alert(result.msg);return;}localStorage.setItem("dmsScreen"+id, checkedList);window.location.href = location.href});} else {alert('请至少选择一个');}});});// 根据字段sort
$(".ups,.downs").click(function () {var data = [];var keyList = [];var arrayList = [];var checkedList = [];var sortArray = [];var inputChecked = $("input:checkbox[name='sort']:checked");var leng = inputChecked.length;if(leng>0) {var onlines = $(".onlines");var onlinesLength = onlines.length;onlines.each(function (k, v) {arrayList[k] = $(this).val();sortArray[$(this).val()] = $(this).attr("data-sort");});//取所选的位置inputChecked.each(function (k, v) {keyList[k] = $(this).attr("data-key");checkedList[k] = $(this).val();});console.log(keyList);var className = $(this).hasClass("ups");if (className) {if ($.inArray("0", keyList) != -1) {alert('不可上移');return false;}inputChecked.each(function (i) {var key = $(this).attr("data-key");var tmp = arrayList[key - 1];var sortTmp =  sortArray[arrayList[key - 1]];data[arrayList[key - 1]] = sortArray[arrayList[key - 1]] = sortArray[arrayList[key]];arrayList[key - 1] = arrayList[key];data[arrayList[key]] = sortArray[arrayList[key]] = sortTmp;arrayList[key] = tmp;});} else {if ($.inArray(String(onlinesLength - 1), keyList) != -1) {alert('不可下移');return false;}for (var i = leng - 1; i >= 0; i--) {var v = keyList[i];var t = v * 1 + 1 * 1;var tmp = arrayList[t];var sortTmp =  sortArray[arrayList[t]];data[arrayList[t]] = sortArray[arrayList[t]] = sortArray[arrayList[v]];arrayList[t] = arrayList[v];data[arrayList[t]] = sortArray[arrayList[v]] = sortTmp;arrayList[v] = tmp;}}$.post(DMSObj.baseUrl + 'admin/ajax/screensort', {"_token": "{{csrf_token()}}",data: data}, function (result) {if (result.error_code != 0) {alert(result.msg);return;}localStorage.setItem("dmsScreen"+id, checkedList);window.location.href = location.href});} else {alert('请至少选择一个');}});});

jquery 批量上下移动相关推荐

  1. jquery批量删除

    前台代码 <!doctype html> <html lang="en"> <head><meta charset="UTF-8 ...

  2. jquery批量获取form表单要提交的值

    jquery代码: alert($("form").serialize()); 完整请求: 这个方法适用于get请求,对于post请求我没试过. $("#generate ...

  3. jquery批量上传图片 java_简单多图片上传 jquery+java 代码

    /** 添加歌曲 */ function addSong(){ var id=$("#_activity_id").val(); window.location.href = &q ...

  4. Django 用 uploadify 实现图片批量上传

    分享一下在Django中使用uploadify--一个jQuery批量上传插件--的方法.github上的django-uploadify使用的是2.1.4版本,上传button只能使用图片,不能很方 ...

  5. html5拖拽图片批量ajax无刷新进度上传

    1.前端拖拽图片 之前有篇文章说到HTML5的拖拽(drag.drop,详见:/post/jquery-plugin-1-jquery-drag-and-html5-draggable-api-and ...

  6. js jquery控制input为只读

    input 框的只读属性: readonly 在页面中直接添加为只读时,可在input中直接添加 readonly="readonly",但是如果想通过点击按钮来改变的话,需要通过 ...

  7. 解决KindEditor无法安装flash插件实现图片批量上传

    由于现在无法下载使用flash插件,导致KindEditor有的功能丧失,无法使用,本文主要解决图片无法批量上传的问题. 由于公司项目是混编项目,比较老旧且业务复杂,使用KindEditor的地方较多 ...

  8. html移除class属性,jquery移除class样式

    用jquery怎么取消掉div下的li的class样式 jquery如何去除class属性 代码如下: var p_class = $("p").attr("class& ...

  9. js控制input只读操作,jQuery控制input只读操作

    1.js为<input>设置readOnly属性 <textarea name="content" id="content" cols=&qu ...

最新文章

  1. mysql workbench 在模板与数据库间同步
  2. asp.net core mvc权限控制:在视图中控制操作权限
  3. 数据结构思维 第六章 树的遍历
  4. tf.ensure_shape 感觉这个功能有点鸡肋
  5. 回顾 | Kubernetes SIG-Cloud-Provider-Alibaba 首次网研会(含 PPT 下载)
  6. Python:执行精确的浮点数运算
  7. 【Php】最最简单的php环境搭建
  8. tf.train.get_checkpoint_state
  9. HttpClient、HttpURLConnection、OKHttp和Volley
  10. 线性代数的本质(Essense Of Linear Algebra)[1]
  11. linux 防DDOS防火墙脚本
  12. xp 计算机配置,xp怎么查看电脑配置
  13. 用Python爬虫爬取链家网上的房源信息
  14. IDEA Git缓慢
  15. 广东知名企品牌拉芳好迪等的中文域名遭抢注
  16. Maven问题总结 - 3 - 技术改变生活商业成就梦想 - 51CTO技术博客
  17. react中的时间戳转换成年-月-日 时:分:秒
  18. halting problem 详解
  19. 用python抢火车票
  20. win10计算机怎么连接网络,win10怎么设置宽带连接,教您修复宽带连接问题

热门文章

  1. 第一章 Linux内核简介
  2. 组合数学(全排列)+DFS CSU 1563 Lexicography
  3. Struts2 中的数据传输的几种方式
  4. iis 服务器出现server too busy!
  5. TensorFlow ImportError: (‘Failed to import pydot. You must `pip install pydot`)
  6. Java 游泳时长计算
  7. HashMap的遍历方法
  8. python----python使用mysql
  9. 洛谷 P2616 [USACO10JAN]购买饲料II Buying Feed, II
  10. Sql查询一个列对应多个列