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 对象模型 执行模型
Dec 06 Javascript
html+js实现动态显示本地时间
Sep 21 Javascript
javascript数据类型示例分享
Jan 19 Javascript
Webpack 实现 Node.js 代码热替换
Oct 22 Javascript
Jquery中巧用Ajax的beforeSend方法
Jan 20 Javascript
BootStrap智能表单demo示例详解
Jun 13 Javascript
郁闷!ionic中获取ng-model绑定的值为undefined如何解决
Aug 27 Javascript
jQuery Ajax File Upload实例源码
Dec 12 Javascript
详解Vue中添加过渡效果
Mar 20 Javascript
深入理解AngularJS中的ng-bind-html指令
Mar 27 Javascript
vue3.0 CLI - 3.2 路由的初级使用教程
Sep 20 Javascript
javascript设计模式 ? 迭代器模式原理与用法实例分析
Apr 17 Javascript
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判断变量类型常用方法
2012/04/24 PHP
php rsa 加密,解密,签名,验签详解
2016/12/06 PHP
div层的移动及性能优化
2010/11/16 Javascript
事件绑定之小测试  onclick &amp;&amp; addEventListener
2011/07/31 Javascript
jQuery实现用户注册的表单验证示例
2013/08/28 Javascript
简单的代码实现jquery定时器
2014/01/03 Javascript
JS判断两个时间大小的示例代码
2014/01/28 Javascript
DOM基础教程之使用DOM设置文本框
2015/01/20 Javascript
微信中一些常用的js方法汇总
2015/03/12 Javascript
js光标定位文本框回车表单提交问题的解决方法
2015/05/11 Javascript
值得分享的轻量级Bootstrap Table表格插件
2016/05/30 Javascript
输入法的回车与消息发送快捷键回车的冲突解决方法
2016/08/09 Javascript
Javascript 创建类并动态添加属性及方法的简单实现
2016/10/20 Javascript
Vue中的v-for循环key属性注意事项小结
2018/08/12 Javascript
JS实现transform实现扇子效果
2020/01/17 Javascript
python 默认参数问题的陷阱
2016/02/29 Python
一张图带我们入门Python基础教程
2017/02/05 Python
[原创]教女朋友学Python(一)运行环境搭建
2017/11/29 Python
在python3.5中使用OpenCV的实例讲解
2018/04/02 Python
python批量修改文件编码格式的方法
2018/05/31 Python
Python OpenCV之图片缩放的实现(cv2.resize)
2019/06/28 Python
python如何随机生成高强度密码
2020/08/19 Python
python3通过subprocess模块调用脚本并和脚本交互的操作
2020/12/05 Python
介绍一下HDLC(High-Level Data Link Control)高层数据链路协议
2012/01/21 面试题
const和static readonly区别
2013/05/20 面试题
物流专业毕业生推荐信范文
2013/11/18 职场文书
司马光教学反思
2014/02/01 职场文书
小学生元旦感言
2014/02/26 职场文书
人事部经理岗位职责
2014/03/07 职场文书
初中班主任寄语
2014/04/04 职场文书
护士优质服务演讲稿
2014/08/26 职场文书
医生辞职信范文
2015/03/02 职场文书
2015年领导干部廉洁自律工作总结
2015/05/26 职场文书
爱国教育主题班会
2015/08/14 职场文书
《清澈的湖水》教学反思
2016/02/17 职场文书
人工智能深度学习OpenAI baselines的使用方法
2022/05/20 Python