Bootstrap+jfinal实现省市级联下拉菜单


Posted in Javascript onMay 30, 2016

小小一个省市级关联菜单,却耗费了一个很多时间来摸索,原因在于对jquery不熟练,既然这么辛苦完成了一个组件,自然想要共享出来,让需要的人使用。

Bootstrap+jfinal实现省市级联下拉菜单

这只是一个基础版,后续还要再进行优化。

代码:省市级关联菜单下载地址

说明:

sql语句就不再说了,里面有“city.sql”、“provincial.sql”两个文件。

1、先说说获取数据

public void initProcitys() {
 logger.info("获取所在地区");
 List<Provincials> provincials = Provincials.me.getProvincials();
 for (Provincials provincial : provincials) {
 List<Citys> citys = Citys.me.getCitysByProvincialId(provincial.getLong("id"));
 provincial.put("citys", JsonKit.toJson(citys));
 }
 setAttr("provincials", provincials);
 render("procity.jsp");
}

1). 先获取所有的省级菜单。
2). 根据省级id获取对应的市级菜单。
3). 在获取市级菜单的时候,注意把list转换为json数据,这里使用了JackJson.

2、说说页面布局

<select name="province_code" id="province_select">
 <c:forEach items="${provincials}" var="item">
 <option value="${item.procode}" cdata='${item.citys}'>${item.proname}</option>
 </c:forEach>
</select>
<select name="city_code" id="city_select">
</select>

1). 使用了两个select,还没有加式样
2). 使用foreach先对省级菜单进行初始化,同时将其city数据绑定到cdata属性上。

3、说说js实现

$(function() {
 provincialChange();
 var $provincial = $("#province_select");
 $provincial.change(provincialChange);
});
function provincialChange() {
 var $provincial = $("#province_select");
 // 省级显示的code值
 var provincial_code = $provincial.val();
 var $selectedOption = $('#province_select option[value=' + provincial_code + ']');
 var city_data = YUNM.jsonEval($selectedOption.attr("cdata"));
 // 市级的菜单列表
 $city_select = $("#city_select");
 $city_select.empty();
 for (var i = 0; i < city_data.length;i++ ) {
 var code = city_data[i].code;
 var cname = city_data[i].cname;
 $city_select.append("<option value='"+code+"'>"+cname+"</option>");
 }
}

1). 页面初始化加载和省级菜单切换时,需要对市级菜单进行加载
2). 先拿到省级菜单,获取当前value,然后根据value获取option
3). 从option中获取市级数据,注意要使用eval对数据转换,具体原因可以度娘,主要是加上 ()。
4.) 循环遍历市级菜单,进行输出显示

如果大家还想深入学习,可以点击这里进行学习,再为大家附3个精彩的专题:

以上就是本文的全部内容,希望对大家学习Bootstrap程序设计有所帮助。

Javascript 相关文章推荐
javascript vvorld 在线加密破解方法
Nov 13 Javascript
基于jquery的自定义鼠标提示效果 jquery.toolTip
Nov 14 Javascript
Jquery解析Json格式数据过程代码
Oct 17 Javascript
JS实现表单中checkbox对勾选中增加边框显示效果
Aug 21 Javascript
Bootstrap树形控件使用方法详解
Jan 27 Javascript
使用Vue.js创建一个时间跟踪的单页应用
Nov 28 Javascript
javaScript实现滚动条事件详解
Mar 24 Javascript
微信小程序Echarts覆盖正常组件问题解决
Jul 13 Javascript
TypeScript之调用栈的实现
Dec 31 Javascript
js实现多个标题吸顶效果
Jan 08 Javascript
简单了解JavaScript arguement原理及作用
May 28 Javascript
JS删除数组指定值常用方法详解
Jun 04 Javascript
基于Bootstrap里面的Button dropdown打造自定义select
May 30 #Javascript
BootStrap下jQuery自动完成的样式调整
May 30 #Javascript
JavaScript常用判断写法大全(推荐)
May 30 #Javascript
基于AngularJs + Bootstrap + AngularStrap相结合实现省市区联动代码
May 30 #Javascript
基于Angularjs实现分页功能
May 30 #Javascript
AngularJs实现分页功能不带省略号的代码
May 30 #Javascript
JS组件Bootstrap Select2使用方法解析
May 30 #Javascript
You might like
一首老MP3,致敬WAR3经典
2021/03/08 魔兽争霸
PHP 设置MySQL连接字符集的方法
2011/01/02 PHP
android上传图片到PHP的过程详解
2015/08/03 PHP
TP5框架实现一次选择多张图片并预览的方法示例
2020/04/04 PHP
原生js实现给指定元素的后面追加内容
2013/04/10 Javascript
js判断客户端是iOS还是Android等移动终端的方法
2013/12/11 Javascript
IE6下拉框图层问题探讨及解决
2014/01/03 Javascript
js 获取时间间隔实现代码
2014/05/12 Javascript
批量修改标签css样式以input标签为例
2014/07/31 Javascript
JS实现的几个常用算法
2016/11/12 Javascript
jquery-mobile基础属性与用法详解
2016/11/23 Javascript
很棒的一组js图片轮播特效
2017/01/12 Javascript
jQuery选取所有复选框被选中的值并用Ajax异步提交数据的实例
2017/08/04 jQuery
vue弹窗插件实战代码
2018/09/08 Javascript
ng-zorro-antd 入门初体验
2018/12/03 Javascript
小程序的上传文件接口的注意要点解析
2019/09/17 Javascript
[01:28:31]《加油DOTA》真人秀 第五期
2014/09/01 DOTA
python爬虫教程之爬取百度贴吧并下载的示例
2014/03/07 Python
Python的time模块中的常用方法整理
2015/06/18 Python
Python3使用requests发闪存的方法
2016/05/11 Python
Python探索之自定义实现线程池
2017/10/27 Python
python使用socket创建tcp服务器和客户端
2018/04/12 Python
CentOS7下python3.7.0安装教程
2018/07/30 Python
Django实现一对多表模型的跨表查询方法
2018/12/18 Python
python opencv实现信用卡的数字识别
2020/01/12 Python
python的reverse函数翻转结果为None的问题
2020/05/11 Python
台湾森森购物网:U-mall
2017/10/16 全球购物
Boden英国官网:英国知名原创时装品牌
2018/11/06 全球购物
英国Iceland杂货店:网上食品购物
2020/12/16 全球购物
什么是Smarty变量操作符?如何使用Smarty变量操作符
2014/07/18 面试题
打架检讨书100字
2014/01/08 职场文书
高等教育学自荐书范文
2014/02/10 职场文书
初一学生评语大全
2014/04/24 职场文书
求职教师自荐书
2014/06/19 职场文书
党员自我评议对照检查材料
2014/09/27 职场文书
党的群众路线教育实践活动专题组织生活会发言材料
2014/10/17 职场文书