技术文章
当前位置:首页 > jQuery技术文章 > JQuery实现带排序功能的权限选择实例

JQuery带排序功能的权限选择代码详解

  • 发布时间:
  • 作者:码农之家原创
  • 点击:171

这篇文章主要知识点是关于JQuery、排序、权限选择、jQuery拖动元素并对元素进行重新排序 的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

jQuery实战
jQuery实战高清第三版
  • 类型:jQuery大小:99.0 MB格式:PDF出版:华中科技大学出版社作者:Bear Bibeault
立即下载

更多jQuery相关的学习资源可以参阅 jQuery电子书程序设计电子书 等栏目。

JQuery实现带排序功能的权限选择实例

本文实例讲述了JQuery实现带排序功能的权限选择。分享给大家供大家参考。具体实现方法如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="jquery-1.6.2.min.js" type="text/javascript"></script>
<style type="text/css">
select{width:100px;height:100px;float:left;margin:10px;}    
#main{float:left;width:100px;text-align:center;margin:10px;}
#main input{width:100px;}
</style>
<script type="text/javascript">
var myJson = [{ "id": "1", "Name": "刘德华", "Age": "52" },
 { "id": "2", "Name": "文章", "Age": "26" },
 {"id":"3","Name":"孙红雷","Age":"40"},
 { "id": "4", "Name": "葛优", "Age": "58"}];
 $(function () {
  var $leftSel = $("#leftSel");
  for (var i = 0; i < myJson.length; i++) {
   var $option = $("<option sortID='" + myJson[i].id + "' value='" + myJson[i].Name + "'>" +
   myJson[i].id + "," + myJson[i].Name + "</option>");
   $option.appendTo($leftSel);
  }
  $("#btnMoveLeft").click(function () {
   var $selOptions = $("#leftSel option:selected");
   $selOptions.appendTo($("#rightSel")).attr("selected", false);
  });
  $("#btnMoveLeftAll").click(function () {
   var $allLeftOptions = $("#leftSel option");
   $allLeftOptions.appendTo($("#rightSel")).attr("selected", false);
  });
  $("#btnMoveRight").click(function () {
   var $selOptions = $("#rightSel option:selected");
   $selOptions.appendTo($leftSel).attr("selected", false);
  });
  $("#btnMoveRightAll").click(function () {
   var $allRightOptions = $("#rightSel option");
   $allRightOptions.appendTo($leftSel).attr("selected", false);
  });
  $("#btnMoveLeftSort").click(function () {
   //把右边列表的内容添加到左边,并按sortID属性进行排序
   $("#rightSel option").appendTo($("#leftSel"));
   var $sortArray = $("#leftSel option").sort(function (prev, next) {
    var prevSortID = parseInt(prev.sortID);
    var nextSortID = parseInt(next.sortID);
    if (prevSortID > nextSortID) {
 return 1;   //交换位置
    }
    else {
 return -1;
    }
   });
   $("#leftSel").empty().append($sortArray);
  });
});
</script>
</head>
<body>
<select id="leftSel" multiple="multiple">
</select>
<div id="main">
<input id="btnMoveLeft" type="button" value="-->" />
<input id="btnMoveLeftAll" type="button" value="==>" />
<input id="btnMoveRight" type="button" value="<--" />
<input id="btnMoveRightAll" type="button" value="<==" />
<input id="btnMoveLeftSort" type="button" value="<--Sort" />
</div>
<select id="rightSel" multiple="multiple">
</select>
</body>
</html>

希望本文所述对大家的jQuery程序设计有所帮助。

jQuery拖动元素并对元素进行重新排序

本文实例讲述了jQuery拖动元素并对元素进行重新排序的实现方法,分享给大家供大家参考,具体实现内容如下

效果图:

jQuery拖动元素并对元素进行重新排序

具体内容如下:

从上图可以看出我们今天要实现的功能。当用户拖动一个图片时,就能改变图片的已有排序并更新表中的排列顺序。比如用户可以随意拖动我们网站中的布局,如谷歌iGoogle就已经实现了。这样便很好的提高了用户体验。

下边,我们一步一步来实现这个功能。

<span id="show">
<div>
  <input id="check" type="checkbox" />
</div>
<div>
  <input type="hidden" id="orderlist" />
  <ul id="list">
    <asp:Repeater ID="rptOrder" runat="server">
    <ItemTemplate>
      <li id="<%#Eval("ID") %>" title="<%#Eval("OrderID") %>">
        <img alt="img" src="<%#Eval("Link") %>" />
      </li>
    </ItemTemplate>
    </asp:Repeater>   
  </ul>
</div>

有一个单选框,当用户选中后,拖动图片时对数据库中数据排序进行更改。隐藏域保存原来的图片排列顺序。ul显示图片列表。

为了能看得过去,稍微加了点样式:

var show = jQuery("#show"); //输出提示 
var orderlist = jQuery("#orderlist"); //原顺序 
var check = jQuery("#check"); //是否更新到数据库

首先将常用的选择器保存下来,这样后边调用就变得比较简洁。这一部大家肯定没有问题。^_^

//保存原来的排列顺序 
var order = []; 
list.children("li").each(function() { 
  order.push(this.title); //原排列顺序保存在title,得到后更改title 
  jQuery(this).attr("title", "你可以拖动进行排序"); 
}); 
orderlist.val(order.join(','));

保存原来的排列顺序到隐藏域。这里用到了数组的push()方法,就是将ul每个li中的title(原来的排列顺序)添加到数组中。最后用join()方法,得到了原排列顺序,返回一个字符串。现在排列顺序格式为1,2,3 。

//ajax更新 
var Update = function(itemid, itemorder) { 
  jQuery.ajax({ 
    type: "post", 
    url: "update.aspx", 
    //id:新的排列对应的ID,order:原排列顺序
    data: { id: itemid, order: orderlist.val() },  
    beforeSend: function() { 
      show.html("正在更新"); 
    }, 
    success: function() { 
      show.html("更新成功"); 
    } 
  }); 
};

接下来,将ajax更新块单独分出来。这样程序变得比较整洁,这块没有新东西。

//调用ajax更新方法 
var Submit = function(update) { 
  var order = []; 
  list.children("li").each(function() { 
    order.push(this.id); 
  }); 
  var itemid = order.join(','); 
  //如果单选框选中,则更新表中排列顺序 
  if (update) { 
    Update(itemid); 
  } 
  else { 
    show.html(""); 
  } 
};

和得到排列顺序类似,将ID组成一个字符串传递给了Update()方法。函数中的参数update为checkbox是否选中。

//执行排列操作 
list.sortable({ 
  opacity: 0.7, 
  update: function() { 
    Submit(check.attr("checked")); 
  } 
});

最后,执行排列操作。后台部分就是对现在ID对应原来排列顺序的更新,相信大家并不陌生。

可以看出如果不进行数据库操作,该插件只需要调用sorttable便可完成对元素的拖动。

以上就是jQuery拖动元素并对元素进行重新排序的实现方法,希望对大家的学习有所帮助。

以上就是本次给大家分享的关于jQuery的全部知识点内容总结,大家还可以在下方相关文章里找到jquery点击元素后滚动条滚、 jQuery中Find选择器的用法和、 同域jQuery(跨)iframe操作DO、 等jQuery文章进一步学习,感谢大家的阅读和支持。

上一篇:jQuery联动日历的实例代码

下一篇:jQuery实现鼠标经过图片变亮离开变暗的效果代码

展开 +

收起 -

相关电子书
学习笔记
网友NO.751840

jQuery简单实现对数组去重及排序操作实例

本文实例讲述了jQuery简单实现对数组去重及排序操作。分享给大家供大家参考,具体如下: 1. 去重: !DOCTYPE htmlhtml lang="en"headmeta charset="UTF-8"titleJQ去重/title/headbodyscript src="jquery-1.7.2.min.js"/scriptscriptvar yearArray = new Array(2009, 2009, 2010, 2010, 2009, 2010);$.unique(yearArray);console.log(yearArray);//2009,2010/script/body/html 运行结果: 2. 先排序再去重: !DOCTYPE htmlhtml lang="en"headmeta charset="UTF-8"titleJQ去重+排序/title/headbodyscript src="jquery-1.7.2.min.js"/scriptscriptvar yearArray = new Array(2009, 2009, 2008, 2010, 2009, 2010);$.unique(yearArray.sort());console.log(yearArray);//2010,2009,2008/script/body/html 运行结果: PS:这里再为大家提供几款去重复工具供大家参考使用: 在线去除重复项工具: http://tools.jb51.net/code/quchong 在线文本去重复工具: http://tools.jb51.net/aideddesign/txt_quchong 更多关于jQuery相关内容感兴趣的读者可查看本……

网友NO.415102

jQuery实现div横向拖拽排序的简单实例

实例如下: !DOCTYPE HTMLhtmlheadmeta charset="UTF-8"titlediv横向拖拽排序/titlescript src="http://libs.baidu.com/jquery/1.9.0/jquery.js"/scriptstyle type="text/css"body,div{padding: 0px;margin: 0px;}.box {margin-left: 15px;padding : 10px;padding-right: 0px;width : 810px;height : 150px;border : blue solid 1px;}.horizontal-div{float : left;margin-right: 10px;border: #000 solid 1px;text-align: center;width : 150px;height : 150px;}.horizontal-div-dash { position: absolute; width: 150px; height: 150px; margin-right: 10px; border: 1px dashed blue; background: #ececec; opacity: 0.7; } .dash { float : left; width: 150px; height: 150px; margin-right: 10px; border: 1px dashed #f00; }; /stylescript type="text/javascript" $(document).ready( function () { var range = { x: 0, y: 0 };//鼠标元素偏移量 var lastPos = { x: 0, y: 0, x1: 0, y1: 0 }; //拖拽对象的四个坐标 var tarPos = { x: 0, y: 0, x1: 0, y1: 0 }; //目标元素对象的坐标初始化 var theDiv = null, move = fals……

网友NO.118718

jQuery增加和删除表格项目及实现表格项目排序的方法

增加和删除行 jquery对表格的操作是老生常谈的问题。最近项目中用到了,今天在这里分享一下! 效果大体如下: 分享一下代码吧! html div class="table-responsive" id="Bk_table" table class="table table-hover table-bordered" thead tr th div class="out" b板块/b em维度/em /div /th /tr /thead tbody /tbody /table /div js操作如下: deleteLie: function () { //删除一列 var index = $(this).parent().index(); for (var i = 0; i $(".table tr").length; i++) { $($(".table tr")[i]).children().eq(index).remove(); } if ($(".table tr").length == 1 $(".table tr").eq(0).children().length == 1) { $("#Bk_table").hide(); $(".blankShow").show(); } }, deleteOneline: function () { //删除一行 $(this).parent().parent().remove(); if ($(".table tr").length == 1 $(".table tr").eq(0).children().length == 1) { $("#Bk_table").hide(); $(".blankShow").show(); } }, addOneBk: function () { //增加一列 if ($("#Bk_table").is(":hidden")) { $("#Bk_table").show();……

网友NO.365358

jQuery实现的简单排序功能示例【冒泡排序】

本文实例讲述了jQuery实现的简单排序功能。分享给大家供大家参考,具体如下: 这里演示的冒泡排序, 通过不断的循环找出最小的值,放到新的数组中。每次循环后都将指针指向下一个元素。直到两层循环都结束。 index.html: htmlhead titleSort/title meta content="text/html" charset="utf-8" script type="text/javascript" language="javascript" src="js/jquery-1.10.2.js"/script script type="text/javascript" language="javascript" $(function(){ var Sort={}; (function(Sort){ Sort.initData={ toSortArr:[] }; Sort.methods=(function(){ var tmp=''; return { init:function(){ // }, pushData:function(arr){ for(var i in arr){ Sort.initData.toSortArr.push(arr[i]); } }, getData:function(){ return Sort.initData.toSortArr; }, sortData:function(arr){ var tmpArr=new Array(); var tmpNumArr=new Array(); var tmpCharArr=new Array(); var tmpOtherArr=new Array(); for(var i in arr){ var at=arr[i].charCodeAt(0); if( at=48 at=57 ){ tmpNumArr.pu……

<
1
>

Copyright 2018-2020 xz577.com 码农之家

电子书资源由网友、会员提供上传,本站记录提供者的基本信息及资源来路

鸣谢: “ 码小辫 ” 公众号提供回调API服务、“ 脚本CDN ”提供网站加速(本站寻求更多赞助支持)

版权投诉 / 书籍推广 / 赞助:520161757@qq.com

上传资源(网友、会员均可提供)

查看最新会员资料及资源信息