位置: 编程技术 - 正文

jQuery利用sort对DOM元素进行排序操作(javascript的sort)

编辑:rootadmin

推荐整理分享jQuery利用sort对DOM元素进行排序操作(javascript的sort),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js sort 对象,js中sort用法,js sort 对象,javascript中sort的用法,js sort 对象,javascript中sort,javascript中sort,js sort 对象,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

排序对于我们是再熟悉不过了,在绝大数应用程序中都会有这样一个场景:当我们从服务器端获取一个列表时,在界面上进行渲染,我们可以会依赖于某一个规则来进行排序,当然此时绝大多数会再次与服务器进行交互来进行重新渲染列表到客户端,这样做未尝不可,但是在有些情况下,我们既不需要利用框架也不需要重新生成列表到客户端,明明可以在客户端进行,达到我们的目的,为何要再一次发送请求到服务器呢?下面我们来看看。

话题

我们首先看看在w3c中js的sort方法。

结果输出:

George,John,Thomas,James,Adrew,MartinAdrew,George,James,John,Martin,Thomas

如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序,但是我们可以自定义排序规则。

我们在sort方法参数中自定义排序函数,如下:

输出如下:

,5,,,,,5,,,,

如上是在w3c中的例子,是不是sort方法就这么简单呢?有何实际用途没有呢?

我能想到的实际场景:在页面上渲染一个列表时,可能该页内容比较多,我们需要滚动鼠标才能看到其他内容或者说该页前几条内容我们已经看过,想看看其他内容,此时我们需要将页面内容进行反转,我们该如何做呢?

利用sort方法对DOM元素排序

jQuery利用sort对DOM元素进行排序操作(javascript的sort)

首先我们来看看界面效果,如下:

上述列表是通过日期进行排序,在右上角有一个排序图标,我们需要实现的是点击该排序图标,来实现列表升序和降序的切换。

既然是排序我们首先需要考虑的是要有一个排序规则,我们添加一个排序序号则可以实现在客户端列表的排序或者反转。接下来我们通过ASP.NET MVC来实现演示sort的反转。看下视图代码:

上述class="message-list-item" 有一个特性 data-sort ,通过此特性来实现初始化的排序。该特性会用于进行DOM元素值的比较,紧接着利用sort方法进行排序。其实说则是调用JQuery中的sort方法,最终还是调用js中的sort方法而已。我们需要对列表进行反转,需要以下几步。

(1)定义一个全局变量。

为什么要定义全局变量?此变量用来保存排序的状态(asc or desc)。

(2)用JQuery来选择列表中的所有元素。

(3)运行JQuery中sort方法来进行排序。

(4)通过detach方法来重新将列表attach到父节点中。

下面给出整个代码。

我们来演示一下:

当然在客户端利用sort不仅仅是反转,还可以排序,如下人员信息列表。

同理获取上述data-name特性来进行人名排序。

总结

本节通过实际例子来讲述了JQuery中的sort方法。我也是在查资料过程中看到在客户端排序的思路,于是进行了学习并和大家分享下。

标签: javascript的sort

本文链接地址:https://www.jiuchutong.com/biancheng/379307.html 转载请保留说明!

上一篇:easyui messager alert 三秒后自动关闭提示的实例

下一篇:jQuery插件WebUploader实现文件上传(jquery插件库怎么导入)

  • 金蝶财务软件年末结账步骤
  • 其他权益工具投资借贷方向
  • 出售的固定资产通过固定资产清理吗
  • 年终销项税额要结账吗
  • 企业所得税计提表模板
  • 专票遗失后可以作废吗
  • 合并报表无形资产摊销时间
  • 增值税专用发票抵扣期限
  • 未确认融资租赁费用是什么类型科目
  • 固定资产盘盈可计入
  • 购进原材料没有发票怎么做分录
  • 企业收到经营外的发票如何做账
  • 代扣代缴增值税纳税义务发生时间
  • 现金抵扣到底要不要缴纳增值税?
  • 新股东入股怎么写记账凭证摘要
  • 资产总额和净资产总额的区别
  • 跨年度的应收账款少记了怎么办
  • 收到运费发票是进项还是销项
  • 公司双方签订协议书范本
  • 旅行社开具的发票能否作废
  • 鸿蒙系统开发者选项怎么关闭
  • 怎么让资产负债率下降
  • php公众号
  • 软件登记费用
  • 以合同条款无法达成一致要求返还定金
  • 银行卡账户年费是什么意思 为什么扣我银行卡的钱
  • 退休后工作单位填什么内容
  • 职工福利费包括奖金吗
  • php发送短信
  • 先买入再卖出
  • 坏账损失属于或有事项吗
  • zabbix 执行命令
  • 合并的命令
  • php目录结构
  • 所得税季度申报弥补以前年度亏损
  • 应付债券相关分录
  • 外贸进出口企业注册资金
  • 支付招聘网站费用怎么入账
  • 小规模纳税人跨区域预缴增值税
  • mysql的服务器
  • 服务费的增值税可以抵扣吗
  • ibps对公提回贷记有什么影响
  • 固定资产的折旧账务处理
  • 阶段性减免企业社保费实施政策对象
  • 银行共管账户怎么提款
  • 餐饮企业原材料采购描述错误的是
  • 企业取得的跨期业务
  • 不动产计提折旧时间
  • 会计账务处理程序有哪些类型
  • 出现事故保险公司负责协商吗
  • 小规模纳税人注册资金要求多少
  • 餐饮会计做账流程图
  • 采用补偿贸易方式的是
  • Linux下mysql的root密码修改方法
  • linux 使用
  • 组装机没有装系统开机会怎么样
  • 苹果电脑重新安装macos失败
  • win8桌面右键无法使用
  • win7系统还能用不
  • xp装windows7
  • win8适用的pr
  • linux系列
  • 系统自动保存文件在哪里
  • 安卓手机插电脑上用id密码能查什么
  • cocos2dx入门
  • android 自定义dialog
  • bat批处理命令大全
  • linux安装node安装包
  • 举例简介三国演义人物塑造的主要手法
  • JavaScipt中Function()函数的使用教程
  • shell读取文本内容到变量
  • unity mobile3d
  • javascript getattribute
  • css弹性布局是什么
  • 宜兴税务局长郁岚
  • 外经证注销网上操作
  • 社保由税务部门征收的文件
  • 税收科研工作思路
  • 铁路运费发票可以抵扣几个点
  • 土地增值税扣除项目金额怎么计算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设