JQuery UI 之Selectable的一些基本用法

2024-05-11 17:32

本文主要是介绍JQuery UI 之Selectable的一些基本用法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关于JQuery UI的Selectable组件的用法,我想JQuery UI API已经描述的很清楚了,在这里不再赘述,请参考jQuery UI 实例 - 选择(Selectable)

在这里需要注意的就是要自己加入CSS代码。好下面叙述我在用这个组件过程中的遇到的一些问题:
1、选中之后获取选中的信息;
2、结合html5中的用户自定义属性来使用(data-*);
3、如何动态也就是用代码让它初始化的时候就选中。

在这里先看我的HTML代码片段:

<ol id="selectable"><li class="ui-state-default" data-user-num="1">1</li><li class="ui-state-default" data-user-num="2">2</li><li class="ui-state-default" data-user-num="3">3</li><li class="ui-state-default" data-user-num="4">4</li><li class="ui-state-default" data-user-num="5">5</li><li class="ui-state-default" data-user-num="6">6</li><li class="ui-state-default" data-user-num="7">7</li><li class="ui-state-default" data-user-num="8">8</li><li class="ui-state-default" data-user-num="9">9</li><li class="ui-state-default" data-user-num="10">10</li><li class="ui-state-default" data-user-num="11">11</li><li class="ui-state-default" data-user-num="12">12</li>
</ol>

在这里的data-user-num属性为我自定义的属性,属于HTML5新特性,在此也不做多叙。

加上css之后先来看看效果:
这里写图片描述

那么第一个问题来了,当我点击选中其中一个之后怎么去获得他的值,在这里比较简单就直接上代码了:

this.userNum =  $( ".ui-selected").data("user-num");

在这里说明一下,通过调试我们发现,jquery在用户选中一个<li>之后会为该元素添加class为”.ui-selected”的样式,所以通过上述代码就能够正确拿到用户选择元素的自定义属性值啦!

那么我的第三个问题接着就来了,如果页面初始化就要求选中一个元素呢,这是在普通不过的需求了,接下来是我解决这个问题的思路:
1、查找Selectable的API,看看能否找到设置初始化选中的属性或方法;
2、监听元素的click事件;
3、自己YY。

在前两种方式都失败了之后,我开始像第三种思路进发,突然想到了在解决问题1的时候取元素样式为”ui-selected”的元素的值。然后我就想如果为一个元素添加这个属性会有什么结果,结果估计都能想得到,那就是那个元素被选中了,好了,到此问题解决。好吧,还是老老实实贴出代码来让大家围观吧:

 this.userNum = 1;$( "#selectable" ).selectable();$(".ui-state-default").filter(function(index, item) {return item.dataset.userNum == this.userNum;}.bind(this)).addClass("ui-selected");

这里我们假设用户的需求是初始化页面选中第一个元素,通过JQuery的filter过滤出用户要选择的元素然后为其添加样式。接下来看看最终效果怎么样:
这里写图片描述

嗯效果还不错,至少达到了我的预期,都来试试吧!

这篇关于JQuery UI 之Selectable的一些基本用法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/980194

相关文章

C语言中%zu的用法解读

《C语言中%zu的用法解读》size_t是无符号整数类型,用于表示对象大小或内存操作结果,%zu是C99标准中专为size_t设计的printf占位符,避免因类型不匹配导致错误,使用%u或%d可能引发... 目录size_t 类型与 %zu 占位符%zu 的用途替代占位符的风险兼容性说明其他相关占位符验证示

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

全面解析Golang 中的 Gorilla CORS 中间件正确用法

《全面解析Golang中的GorillaCORS中间件正确用法》Golang中使用gorilla/mux路由器配合rs/cors中间件库可以优雅地解决这个问题,然而,很多人刚开始使用时会遇到配... 目录如何让 golang 中的 Gorilla CORS 中间件正确工作一、基础依赖二、错误用法(很多人一开

Java Stream流之GroupBy的用法及应用场景

《JavaStream流之GroupBy的用法及应用场景》本教程将详细介绍如何在Java中使用Stream流的groupby方法,包括基本用法和一些常见的实际应用场景,感兴趣的朋友一起看看吧... 目录Java Stream流之GroupBy的用法1. 前言2. 基础概念什么是 GroupBy?Stream

Java Spring的依赖注入理解及@Autowired用法示例详解

《JavaSpring的依赖注入理解及@Autowired用法示例详解》文章介绍了Spring依赖注入(DI)的概念、三种实现方式(构造器、Setter、字段注入),区分了@Autowired(注入... 目录一、什么是依赖注入(DI)?1. 定义2. 举个例子二、依赖注入的几种方式1. 构造器注入(Con

详解MySQL中JSON数据类型用法及与传统JSON字符串对比

《详解MySQL中JSON数据类型用法及与传统JSON字符串对比》MySQL从5.7版本开始引入了JSON数据类型,专门用于存储JSON格式的数据,本文将为大家简单介绍一下MySQL中JSON数据类型... 目录前言基本用法jsON数据类型 vs 传统JSON字符串1. 存储方式2. 查询方式对比3. 索引

从入门到精通详解LangChain加载HTML内容的全攻略

《从入门到精通详解LangChain加载HTML内容的全攻略》这篇文章主要为大家详细介绍了如何用LangChain优雅地处理HTML内容,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录引言:当大语言模型遇见html一、HTML加载器为什么需要专门的HTML加载器核心加载器对比表二

WinForm跨线程访问UI及UI卡死的解决方案

《WinForm跨线程访问UI及UI卡死的解决方案》在WinForm开发过程中,跨线程访问UI控件和界面卡死是常见的技术难题,由于Windows窗体应用程序的UI控件默认只能在主线程(UI线程)上操作... 目录前言正文案例1:直接线程操作(无UI访问)案例2:BeginInvoke访问UI(错误用法)案例

MySql基本查询之表的增删查改+聚合函数案例详解

《MySql基本查询之表的增删查改+聚合函数案例详解》本文详解SQL的CURD操作INSERT用于数据插入(单行/多行及冲突处理),SELECT实现数据检索(列选择、条件过滤、排序分页),UPDATE... 目录一、Create1.1 单行数据 + 全列插入1.2 多行数据 + 指定列插入1.3 插入否则更

C#连接SQL server数据库命令的基本步骤

《C#连接SQLserver数据库命令的基本步骤》文章讲解了连接SQLServer数据库的步骤,包括引入命名空间、构建连接字符串、使用SqlConnection和SqlCommand执行SQL操作,... 目录建议配合使用:如何下载和安装SQL server数据库-CSDN博客1. 引入必要的命名空间2.