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 相关文章推荐
encode脚本和normal脚本混用的问题与解决方法
Mar 08 Javascript
jquery控制listbox中项的移动并排序
Nov 12 Javascript
Javascript获取窗口(容器)的大小及位置参数列举及简要说明
Dec 09 Javascript
JS实现的一个简单的Autocomplete自动完成例子
Apr 16 Javascript
JavaScript中String.match()方法的使用详解
Jun 06 Javascript
vue.js表格分页示例
Oct 18 Javascript
微信小程序 WXDropDownMenu组件详解及实例代码
Oct 24 Javascript
jQuery实现Select下拉列表进行状态选择功能
Mar 30 jQuery
JavaScript中offsetWidth的bug及解决方法
May 17 Javascript
Vue实现日历小插件
Jun 26 Javascript
Vue+Element-U实现分页显示效果
Nov 15 Javascript
基于Vue2实现移动端图片上传、压缩、拖拽排序、拖拽删除功能
Jan 05 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
常用星际术语索引(新手指南)
2020/03/04 星际争霸
社区(php&amp;&amp;mysql)六
2006/10/09 PHP
isset和empty的区别
2007/01/15 PHP
ThinkPHP CURD方法之field方法详解
2014/06/18 PHP
PHP获取文本框、密码域、按钮的值实例代码
2017/04/19 PHP
php使用PDO从数据库表中读取数据的实现方法(必看)
2017/06/02 PHP
PHP利用百度ai实现文本和图片审核
2019/05/08 PHP
Yii2框架加载css和js文件的方法分析
2019/05/25 PHP
简约JS日历控件 实例代码
2013/07/12 Javascript
jquery和javascript中如何将一元素的内容赋给另一元素
2014/01/09 Javascript
JQuery中操作Css样式的方法
2014/02/12 Javascript
javascript用函数实现对象的方法
2015/05/14 Javascript
深入理解JS中的substr和substring
2016/04/26 Javascript
BootStrap下拉框在firefox浏览器界面不友好的解决方案
2016/08/18 Javascript
JS键盘版计算器的制作方法
2016/12/03 Javascript
textarea 在浏览器中固定大小和禁止拖动的实现方法
2016/12/03 Javascript
Vue指令的钩子函数使用方法
2017/03/20 Javascript
JavaScript实现一个空中避难的小游戏
2017/06/06 Javascript
vue中如何实现pdf文件预览的方法
2018/07/12 Javascript
解决angularjs前后端分离调用接口传递中文时中文乱码的问题
2018/08/13 Javascript
详解vue-cli 2.0配置文件(小结)
2019/01/14 Javascript
用Electron写个带界面的nodejs爬虫的实现方法
2019/01/29 NodeJs
小白教程|一小时上手最流行的前端框架vue(推荐)
2019/04/10 Javascript
原生JS实现列表内容自动向上滚动效果
2019/05/22 Javascript
element-ui 中使用upload多文件上传只请求一次接口
2019/07/19 Javascript
Vue ElementUI实现:限制输入框只能输入正整数的问题
2020/07/31 Javascript
vue addRoutes路由动态加载操作
2020/08/04 Javascript
vue使用svg文件补充-svg放大缩小操作(使用d3.js)
2020/09/22 Javascript
python实现键盘控制鼠标移动
2020/11/27 Python
pytorch对梯度进行可视化进行梯度检查教程
2020/02/04 Python
Monnier Frères美国官网:法国知名奢侈品网站
2016/11/22 全球购物
环境工程大学生自荐信
2013/10/21 职场文书
元旦晚会活动总结
2014/07/09 职场文书
2015年教研室工作总结范文
2015/05/23 职场文书
Python趣味挑战之给幼儿园弟弟生成1000道算术题
2021/05/28 Python
ROS系统将python包编译为可执行文件的简单步骤
2021/07/25 Python