jQuery基于BootStrap样式实现无限极地区联动


Posted in Javascript onAugust 26, 2016

HTML 部分

<div class="row" style="margin:100px auto;">
<form method="post">
<div class="col-md-12" id="area">
<div class="col-md-2 pr0">
<select name='area[]' num='0' class="form-control input-sm select" id="main" onchange="change(this)">
<option>请选择地区</option>
</select>
</div>
</div>
<button type="submit">tijiao</button>
</form>
</div>

js部分

<script>
// 首次获取 ajax数据
$.get("http://127.0.0.1:83/areas/sec", {id:'0'},
function(data){
var option="<option value=''>请选择</option>";
var list=data.data;
for(var key in list){
// console.log(key);
// console.log(data[key].areaname);
option+="<option value='"+key+"'>"+list[key].areaname+"</option>";
}
$('#main').html(option);
},'jsonp');
function change(event){
$('.select').each(function(i){
//清除重选后的 老节点
console.log($(event).attr('num'));
if($(this).attr('num')>$(event).attr('num')){
$(this).parent().remove();
}
})
var sel=$('.select').index($(event))+1;
var id=$(event).val();
$.ajax({
type: "get",
dataType:"jsonp",
url: "http://127.0.0.1:83/areas/sec",
data: {id:id},
sync: false,//设置为同步
success: function(data){
console.log(data);
var list =data.data
if(data.state==='1'){
var option="<option value=''>请选择</option>";
for(var key in list){
option+="<option value='"+key+"'>"+list[key].areaname+"</option>";
}
//$('#tmp').html(option);
//tmp=option
$('<div class="col-md-2 pr0"><select name="area[]" num="'+sel+'" class="form-control input-sm select" onchange="change(this)">'+option+'</select></div>').appendTo('#area');
}
}
});
}
</script>

后端返回的数据为

{
state:1,
data:{
{1:{
areaname:"呼和浩特市"
id:"150100"
level:"2"
pid:"150000"
 }...
}}

Javascript 相关文章推荐
javascript Firefox与IE 替换节点的方法
Feb 24 Javascript
浅谈jquery事件处理
Apr 24 Javascript
jQuery mobile类库使用时加载导航历史的方法简介
Dec 04 Javascript
Bootstrap入门书籍之(零)Bootstrap简介
Feb 17 Javascript
Node.js的npm包管理器基础使用教程
May 26 Javascript
AngularJS入门教程之路由与多视图详解
Aug 19 Javascript
jQuery Validate插件实现表单验证
Aug 19 Javascript
AngularJS入门教程之路由机制ngRoute实例分析
Dec 13 Javascript
AngularJS select设置默认值的实现方法
Aug 25 Javascript
详解mpvue小程序中怎么引入iconfont字体图标
Oct 01 Javascript
解决layui-open关闭自身窗口的问题
Sep 10 Javascript
在Vue中使用mockjs代码实例
Nov 25 Vue.js
BootStrap无限级分类(无限极分类封装版)
Aug 26 #Javascript
jquery 动态合并单元格的实现方法
Aug 26 #Javascript
轻松掌握JavaScript中介者模式
Aug 26 #Javascript
修改jquery中dialog的title属性方法(推荐)
Aug 26 #Javascript
修改Jquery Dialog 位置的实现方法
Aug 26 #Javascript
在线引用最新jquery文件的实现方法
Aug 26 #Javascript
纯前端JavaScript实现Excel IO案例分享
Aug 26 #Javascript
You might like
php实现图片缩放功能类
2013/12/18 PHP
PHP针对JSON操作实例分析
2015/01/12 PHP
smarty模板引擎基础知识入门
2015/03/30 PHP
在Mac OS的PHP环境下安装配置MemCache的全过程解析
2016/02/15 PHP
PHP获取MySQL执行sql语句的查询时间方法
2018/08/21 PHP
PHP number_format函数原理及实例解析
2020/07/14 PHP
nodejs 后缀名判断限制代码
2011/03/31 NodeJs
JS实现拖动示例代码
2013/11/01 Javascript
jquery validate在ie8下的bug解决方法
2013/11/13 Javascript
jsp网页搜索结果中实现选中一行使其高亮
2014/02/17 Javascript
js onmousewheel事件多次触发问题解决方法
2014/10/17 Javascript
node.js中的fs.rename方法使用说明
2014/12/16 Javascript
jquery实现submit提交表单
2015/02/03 Javascript
javascript中判断json的方法总结
2015/08/27 Javascript
AngularJs表单验证实例详解
2016/05/30 Javascript
JavaScript闭包实例详解
2016/06/03 Javascript
基于MVC5和Bootstrap的jQuery TreeView树形控件(二)之数据支持json字符串、list集合
2016/08/11 Javascript
Angular.js去除页面中显示的空行方法示例
2017/03/30 Javascript
create-react-app构建项目慢的解决方法
2018/03/14 Javascript
详解Vue组件插槽的使用以及调用组件内的方法
2018/11/13 Javascript
vue动态设置页面title的方法实例
2020/08/23 Javascript
[04:40]2016国际邀请赛中国区预选赛全程TOP10镜头集锦
2016/07/01 DOTA
[46:20]CHAOS vs Alliacne 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
用Python编写一个简单的Lisp解释器的教程
2015/04/03 Python
Python3爬虫学习之应对网站反爬虫机制的方法分析
2018/12/12 Python
解决sublime+python3无法输出中文的问题
2018/12/12 Python
python格式化输出保留2位小数的实现方法
2019/07/02 Python
PyQt5通信机制 信号与槽详解
2019/08/07 Python
如何使用python实现模拟鼠标点击
2020/01/06 Python
html5给汉字加拼音加进度条的实现代码
2020/04/07 HTML / CSS
温泉秘密:Onsen Secret
2020/07/06 全球购物
采购求职信
2014/03/17 职场文书
法定代表人授权委托书
2014/04/04 职场文书
2015年社区综治宣传月活动总结
2015/03/25 职场文书
2015年人力资源工作总结
2015/04/08 职场文书
python图像处理基本操作总结(PIL库、Matplotlib及Numpy)
2021/06/08 Python