08.LoT.UI 前后台通用框架分解系列之——多样的Tag选择器
LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui
LoT.UI开源地址如下:https://github.com/dunitian/LoTCodeBase/tree/master/LoTUI
这个必须说下,本来是用Bootstrap-Select做的,很漂亮,正好后台也是Bootstrap。后来发现不能满足需求。标签有则选,没则添加 而Bootstrap-Select的文本框是不可以手动输入的==》so,用了Select2,这个可以不依赖Bootstrap
两种我都做了Demo,至于取舍就看你自己了~
先看在LoT.UI里面的应用效果图:
Bootstrap-Select:(诸如权限分配,菜单分配都可以用)
--------------------------------------------------------------------------------------------------------------------------------------------------------
Select2:(通用,但丑了点。可后期美化)
----------------------------------------------------------------------------------------------------------------------------------------------------------
Bootstrap-Select 演示(https://github.com/dunitian/LoTCodeBase/blob/master/LoTUI/Manager/Demo/select.html)
BootStrap-Select我这边就不具体说了,demo里面有演示,这边说下Select2
核心代码(https://github.com/dunitian/LoTCodeBase/blob/master/LoTUI/Manager/Demo/select2.html)
1.样式部分:
2.HTML部分
3.Script部分
完整代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | <!DOCTYPE html> <html> <head> <meta http-equiv= "Content-Type" content= "text/html; charset=utf-8" /> <title></title> <meta charset= "utf-8" /> <link href= "/open/select2/select2.min.css" rel= "stylesheet" /> </head> <body> < select style= "width:50%;" id= "lot-tagSelect" multiple> <optgroup label= "SQL" > <option>MySql</option> <option>Sqlite</option> <option>SQLServer</option> </optgroup> <optgroup label= "Other" > <option>C#</option> <option>EF</option> <option>MVC</option> <option>Dapper</option> <option>Ado.Net</option> </optgroup> </ select > <button id= "btn" >获取选中项的值</button> <script src= "http://cdn.bootcss.com/jquery/1.10.2/jquery.min.js" ></script> <script src= "/open/select2/select2.min.js" ></script> <script type= "text/javascript" > $( '#lot-tagSelect' ).select2({ tags: true , tokenSeparators: [ ',' , ' ' ] }); $( '#btn' ).click(function () { var ids = $.map($( '#lot-tagSelect' ).select2( "data" ), function (row) { return row.text; }); alert(ids. join ( ',' )); }); </script> </body> </html> |
开源组件:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异