bootstrap multiselect插件级联选择框操作 内容从json文件获取
2017-12-10 20:37
519 查看
在开发中经常用到bootstrap插件 这几天发现了一个multiselect插件 选择框插件 很好用 整理一下Demo 供大家参考
在项目中用到选择框一般涉及到级联选择操作 数据是从json文件获取或者从数据库读取出数据
首先 使用这个插件需要导入一系列依赖的js文件和css文件 这个可以从官方demo获取
然后准备json数据 先读取本地json 做一个省 县 市 的筛选
json文件读者下去自备
HTML代码
第一个选择省是写好的数据 (读者也可以自定义 添加json里的数据 动态添加)主要注意value的值 一会根据这个值选择json文件
然后写js
js思路是:这个multiselect插件提供的有选择框选择触发的事件,onClick 事件 选择数据后调用 然后先选择省 获取选择的是哪个省 根据这个值 在选择调用哪一个json文件 把数据动态添加到下一个选择框中 添加之前 要先清空一下选择框里的数据 这个是为了防止多次选择省后面的数据没有清空。
详情看下面代码 访问数据库时 可以参考我注释的那段代码 jquery的ajax方法 访问数据库 根据访问返回的json数据进行页面动态添加数据
此代码 可进行优化一下 将onClick事件更改为onChange事件 输入框内容改变时才会访问json文件 否则就不访问json文件了。谢谢阅读。
By it_noone 一个进阶中的码农
在项目中用到选择框一般涉及到级联选择操作 数据是从json文件获取或者从数据库读取出数据
首先 使用这个插件需要导入一系列依赖的js文件和css文件 这个可以从官方demo获取
然后准备json数据 先读取本地json 做一个省 县 市 的筛选
json文件读者下去自备
HTML代码
<!-- json文件级联操作 --> <br><br> <div style="width:1000px"> <label style="float: left;">省</label> <select multiple="multiple" style="width:150px" id="sel_jilian_1" > <option value="hn" >河南</option> <option value="hb">河北</option> </select> <label >市</label> <select multiple="multiple" style="width:150px" id="sel_jilian_2"> </select> <label >县</label> <select multiple="multiple" style="width:150px" id="sel_jilian_3"> </select> </div>
第一个选择省是写好的数据 (读者也可以自定义 添加json里的数据 动态添加)主要注意value的值 一会根据这个值选择json文件
然后写js
js思路是:这个multiselect插件提供的有选择框选择触发的事件,onClick 事件 选择数据后调用 然后先选择省 获取选择的是哪个省 根据这个值 在选择调用哪一个json文件 把数据动态添加到下一个选择框中 添加之前 要先清空一下选择框里的数据 这个是为了防止多次选择省后面的数据没有清空。
详情看下面代码 访问数据库时 可以参考我注释的那段代码 jquery的ajax方法 访问数据库 根据访问返回的json数据进行页面动态添加数据
<script type="text/javascript"> $("#sel_jilian_1").multipleSelect({ placeholder: "---选择省---", selectAll: false, single:true, onClick:function(view){ /* alert(view.value); var a ="sheng_"+view.value+".json"; alert(a); */ var id="sel_jilian_2"; var xz_id="sel_jilian_1" view_json(view,id,xz_id); } }); $("#sel_jilian_2").multipleSelect({ placeholder: "---选择市---", selectAll: false, single:true, onClick:function(view){ /* alert(view.value); var a ="sheng_"+view.value+".json"; alert(a); */ var id="sel_jilian_3"; var xz_id="sel_jilian_2" view_json(view,id,xz_id); } }); $("#sel_jilian_3").multipleSelect({ placeholder: "---选择县---", selectAll: false, single:true }); function view_json(view,id,xz_id){ //alert("选中的值"+view.html); alert("选中的值: " + $("#"+xz_id).multipleSelect('getSelects', 'text')); //var b=[{"id":"1","uname":"龚世赟"},{"id":"2","uname":"靳鎧歌"},{"id":"3","uname":"沙家聪"}]; var json=view.value+".json"; //清空内容 $("#sel_jilian_3").empty().multipleSelect("refresh"); $("#sel_jilian_2").empty(); //读取本地json文件 $.getJSON(json, function (data){ $.each(data, function (infoIndex, info){ $opt = $("<option />", { value: info["id"], text: info["uname"] }); $("#"+id).append($opt).multipleSelect("refresh"); }) }) //连接数据库获取服务器中的json文件 没有写action文件 没写数据库获取不了数据库 /* $.ajax({ //请求方式为get type:"POST", //json文件位置 url:"getJSON.action", //返回数据格式为json dataType: "json", //请求成功完成后要执行的方法 success: function(data){ //使用$.each方法遍历返回的数据date,插入到id为#result中 $.each(data,function(i,item){ //alert(item.id); $opt = $("<option />", { value: item.id, text: item.uname }); $("#"+id).append($opt).multipleSelect("refresh"); }) } }) */ } </script>
此代码 可进行优化一下 将onClick事件更改为onChange事件 输入框内容改变时才会访问json文件 否则就不访问json文件了。谢谢阅读。
By it_noone 一个进阶中的码农
相关文章推荐
- 用jquery如何获取select元素中当前选择的文本内容
- 文件操作(判断状态、删除、新建、复制、清空文件内容、获取文件长度)
- CFileDialog 使用 OFN_ALLOWMULTISELECT 标志选择多个文件
- 插件介绍:Bootstrap 下拉多选框插件Bootstrap Multiselect
- js操作select 添加 删除 修改 清空 选择 获取
- XML:使用DOM技术解析xML文件中的城市,实现select级联选择
- 操作select的jquery插件 注意:使用时请保持JS文件的编码和你程序的编码一致...
- jQuery获取form中Select/textarea/checkbox/radio选择的Text和Value等其他常见操作
- 文件的读取操作、对话框的方式打开文件获取文件内容
- 结合bootstrap fileinput插件和Bootstrap-table表格插件,实现文件上传、预览、提交的导入Excel数据操作流程
- java中获取后缀为properties的文件内容的一些操作
- linux文件操作—获取文本中指定行的内容
- jquery-ajax请求后台数据转换json显示在select下拉列表&&jquery获取下拉列表的值和显示内容的方法
- Bootstrap 下拉多选框插件Bootstrap Multiselect
- Bootstrap-Table 选择行内容变为json对象
- jQuery插件实现select下拉框左右选择_交换内容(multiselect2side) 的一些网站 (有时间整理)
- java获取json文件内容(url方式、本地方式)
- jQuery插件实现select下拉框左右选择_交换内容(multiselect2side)
- C# 自动查找文件内容(正则使用、获取目录下所有文件、多线程、日志记录,文件操作)
- 使用 jquery 的 上传文件插件 uploadify 3.1 配合 java 来做一个简单的文件上次功能。并且在界面上有radio 的选择内容也要上传