jQuery实现条件搜索查询、实时取值及升降序排序的方法分析


Posted in jQuery onMay 04, 2019

本文实例讲述了jQuery实现条件搜索查询、实时取值及升降序排序的方法。分享给大家供大家参考,具体如下:

一。鼠标点击获取搜索条件中的被选中的值

创建方法  getAttrValue() 方法,每次的 .click 都要调用  function  getAttrValue(){}

例如,把选中的值给到属性 data-value 。只需要每次点击,获取 li.active 的子集  a 的 .attr("data-value")即可

eg:

var pubTime = $(getArr[0]).find("li.active").children().attr("data-value");

pubTime 就是第一个搜索项的值

二。排序方式的状态(主要应用于table 内容的升降序排列需求)

排序方式分为三种状态:

1. 默认灰色未选中
2. 点击默认降序  .desc
3. 再点击升序  .asc

CSS :

.search-sort li a, .search-sort li a.asc, .search-sort li a.desc { background-image : sort.png }--灰色图标
.search-sort li.active a.desc { background-image: desc.png }--向下的蓝色图标
.search-sort li.active a.asc { background-image: asc.png !important; }--向上的蓝色图标

JS :默认第一个排序降序被选中。切换排序方式,默认展示降序。排序方式互斥

// 第一行: li a.asc--展示灰色图标
// 第二行: 第一次点击 li 时, li.active a.desc,展示向下的蓝色图标,并且清除 siblings .active ;同时,其他的排序方式默认 asc ;
// getAttrValue()---每次选中就走一次输出
$(".search-sort li a").addClass("asc");
$(".search-sort li").each(function(){
  $(this).click(function(){
    $(this).addClass("active");
    $(this).children("a").addClass("desc").toggleClass("asc");
    $(this).siblings().removeClass("active");
    $(this).siblings().children().removeClass("desc").addClass("asc");
    getAttrValue();
  })
});
// 默认第一个时间降序被选中
$($(".search-sort").children()[0]).addClass("active")
$($(".search-sort").children()[0]).children().addClass("desc").removeClass("asc");

三。获取排序方式的值

li.active a[class=" desc / asc "]
/*
* sortArr // 排序方式 给出一个数组
* 根据 index 脚标找 sortArr 对应的值
* */
var sortArr = ["sortTime","sortTotalComment","sortIncreaseComment"]; //三种排序方式
var sortIndex = $(getArr[getLen-1]).find("li.active").index(); // 当前那个按钮被选中,返回脚标
var sortLast = $(getArr[getLen-1]).find("li.active").children().attr("class"); //返回被选中按钮的 class name
var sortLastString = sortLast.substring(11); // substring(11) 截取从11到最后的字符串 == desc / desc asc
var dataValue = sortArr[sortIndex].concat(sortLastString); // .concat() 生成新的字符串

dataValue  就是排序方式的值

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

jQuery 相关文章推荐
使用jQuery ajaxupload插件实现无刷新上传文件
Apr 23 jQuery
JQuery实现定时刷新功能代码
May 09 jQuery
jquery与js实现全选功能的区别
Jun 11 jQuery
jQuery Position方法使用和兼容性
Aug 23 jQuery
jQuery实现点击自身以外区域关闭弹出层功能完整示例【改进版】
Jul 31 jQuery
jquery实现动态添加附件功能
Oct 23 jQuery
jQuery动态操作表单示例【基于table表格】
Dec 06 jQuery
jquery图片预览插件实现方法详解
Jul 18 jQuery
jquery插件开发模式实例详解
Jul 20 jQuery
JQuery获得内容和属性方法解析
May 30 jQuery
jQuery实现异步上传一个或多个文件
Aug 17 jQuery
jQuery treeview树形结构应用
Mar 24 jQuery
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
Apr 28 #jQuery
jQuery对底部导航进行跳转并高亮显示的实例代码
Apr 23 #jQuery
详解jquery和vue对比
Apr 16 #jQuery
JQuery Ajax跨域调用和非跨域调用问题实例分析
Apr 16 #jQuery
详解jQuery中的getAll()和cleanData()
Apr 15 #jQuery
详解JQuery基础动画操作
Apr 12 #jQuery
详解jQuery设置内容和属性
Apr 11 #jQuery
You might like
一个简单的PHP验证码实现代码
2014/05/10 PHP
php CI框架插入一条或多条sql记录示例
2014/07/29 PHP
Zend Framework教程之资源(Resources)用法实例详解
2016/03/14 PHP
利用ajax和PHP实现简单的流程管理
2017/03/23 PHP
thinkphp框架使用JWTtoken的方法详解
2019/10/10 PHP
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.2 0
2008/03/22 Javascript
将函数的实际参数转换成数组的方法
2010/01/25 Javascript
JavaScript初学者应注意的七个细节小结
2012/01/30 Javascript
使用JS读秒使用示例
2013/09/21 Javascript
gridview生成时如何去掉style属性中的border-collapse
2014/09/30 Javascript
jQuery实现可关闭固定于底(顶)部的工具条菜单效果
2015/11/06 Javascript
javascript实现不同颜色Tab标签切换效果
2016/04/27 Javascript
JavaScript中的ajax功能的概念和示例详解
2016/10/17 Javascript
JS实现的图片预览插件与用法示例【不上传图片】
2016/11/25 Javascript
vue2.0开发实践总结之疑难篇
2016/12/07 Javascript
node使用UEditor富文本编辑器的方法实例
2017/07/11 Javascript
EasyUI的DataGrid绑定Json数据源的示例代码
2017/12/16 Javascript
浅谈关于iview表单验证的问题
2018/09/29 Javascript
微信小程序ibeacon三点定位详解
2018/10/31 Javascript
深入浅析nuxt.js基于ssh的vue通用框架
2019/05/21 Javascript
python实现在无须过多援引的情况下创建字典的方法
2014/09/25 Python
Python 网页解析HTMLParse的实例详解
2017/08/10 Python
Numpy数组转置的两种实现方法
2018/04/17 Python
Python闭包思想与用法浅析
2018/12/27 Python
python实现控制COM口的示例
2019/07/03 Python
如何用Python破解wifi密码过程详解
2019/07/12 Python
基于python代码批量处理图片resize
2020/06/04 Python
python的链表基础知识点
2020/09/13 Python
伦敦新晋轻奢耳饰潮牌:Tada & Toy
2020/05/25 全球购物
大型会议接待方案
2014/03/01 职场文书
小学数学国培感言
2014/03/10 职场文书
晚会主持词开场白
2014/03/17 职场文书
史学专业毕业生求职信
2014/05/09 职场文书
关于九一八事变的演讲稿2014
2014/09/17 职场文书
公开致歉信
2019/06/24 职场文书
如何用Laravel包含你自己的帮助函数
2021/05/27 PHP