js select下拉联动 更具级联性!


Posted in Javascript onApril 17, 2020

之前有过记录,select下拉联动 (Bootstrap、JQuery插件之cxselect)区别在这个级联性更强。

js select下拉联动 更具级联性!

HTML源码:

<!DOCTYPE html> 
<head> 
 <meta charset="utf-8"> 
 <title></title> 
</head> 
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> 
<script type="text/javascript" src="USjs.js"></script> 
<body> 
 
<div class="container"> 
 <table> 
 <tr> 
  <td>厂商:</td> 
  <td><select id="selF"><option>请选择</option></select></td> 
  <td>品牌:</td> 
  <td><select id="selT"><option>请选择</option></select></td> 
  <td>型号:</td> 
  <td><select id="selC"><option>请选择</option></select></td> 
  <td><input type="button" value="查询" id="Button1" class="btn" /></td> 
 </tr> 
 </table> 
</div> 
 
</body> 
</html>

JS(USjs.js)源码: 在转载的基础上做了修改,特别是源数据JSON格式。

$(function(){ 
 
 function objInit(obj){ 
 return $(obj).html('<option>请选择</option>'); 
 } 
 
 $.getJSON('data.json', function(json) { 
 var arrData = json; 
 $.each(arrData,function(pF,pV){ 
  $('#selF').append('<option value="'+pF+'">'+pV.n+'</option>'); 
 }); 
 $('#selF').change(function(){ 
  objInit('#selT'); 
  objInit('#selC'); 
  $.each(arrData,function(pF,pS){ 
  if($('#selF option:selected').attr('value')==pF){ 
   $.each(pS.s,function(pT,pC){ 
   $('#selT').append('<option value="'+pT+'">'+pC.n+'</option>'); 
   }); 
   $('#selT').change(function(){ 
   objInit('#selC'); 
   $.each(pS.s,function(pT,pC){ 
    if($('#selT option:selected').attr('value')==pT){ 
    $.each(pC.s,function(ii,vv){ 
     $('#selC').append('<option value="'+ii+'">'+vv.n+'</option>'); 
    }) 
    } 
   }) 
   }); 
  } 
  }) 
 }); 
 }); //getJSON 
});

JSON(data.json)文件

[ 
 { 
 "n":"厂商1", 
 "s":[ 
  { 
  "n":"品牌一", 
  "s":[{"n":"型号1-1-1"},{"n":"型号1-1-2"}] 
  }, 
  { 
  "n":"品牌二", 
  "s":[{"n":"型号1-2-1"},{"n":"型号1-2-2"}] 
  } 
  ] 
 }, 
 { 
 "n":"厂商2", 
 "s":[ 
  { 
  "n":"品牌一", 
  "s":[{"n":"型号2-1-1"},{"n":"型号2-1-2"}] 
  }, 
  { 
  "n":"品牌二", 
  "s":[{"n":"型号2-2-1"},{"n":"型号2-2-2"}] 
  } 
  ] 
 }, 
 { 
 "n":"厂商3", 
 "s":[ 
  { 
  "n":"品牌一", 
  "s":[{"n":"型号3-1-1"},{"n":"型号3-1-2"}] 
  }, 
  { 
  "n":"品牌二", 
  "s":[{"n":"型号3-2-1"},{"n":"型号3-2-2"}] 
  } 
  ] 
 } 
]

Find more from: //3water.com/article/102040.htm

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery数组处理代码详解(含实例演示)
Feb 03 Javascript
Javascript 浮点运算的问题分析与解决方法
Aug 27 Javascript
浅析Js中的单引号与双引号问题
Nov 06 Javascript
jquery JSON的解析方式示例介绍
Jul 27 Javascript
简介JavaScript中toTimeString()方法的使用
Jun 12 Javascript
jquery实现上传文件大小类型的验证例子(推荐)
Jun 25 Javascript
原生js仿jquery animate动画效果
Jul 13 Javascript
关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法
Mar 02 Javascript
JS实现用特殊符号替换字符串的中间部分区域的实例代码
Jul 24 Javascript
微信小程序云开发如何使用npm安装依赖
May 18 Javascript
Vue项目使用localStorage+Vuex保存用户登录信息
May 27 Javascript
es6函数之箭头函数用法实例详解
Apr 25 Javascript
基于JavaScript实现熔岩灯效果导航菜单
Jan 04 #Javascript
使用Javascript判断浏览器终端设备(PC、IOS(iphone)、Android)
Jan 04 #Javascript
jquery+ajax实现省市区三级联动效果简单示例
Jan 04 #Javascript
基于jQuery实现火焰灯效果导航菜单
Jan 04 #Javascript
深入理解Javascript中的valueOf与toString
Jan 04 #Javascript
使用UrlConnection实现后台模拟http请求的简单实例
Jan 04 #Javascript
js实现定时进度条完成后切换图片
Jan 04 #Javascript
You might like
全国FM电台频率大全 - 17 湖北省
2020/03/11 无线电
解析php常用image图像函数集
2013/06/24 PHP
PHP Class&amp;Object -- PHP 自排序二叉树的深入解析
2013/06/25 PHP
php递归创建目录的方法
2015/02/02 PHP
php基于自定义函数记录log日志方法
2017/07/21 PHP
jQuery 行级解析读取XML文件(附源码)
2009/10/12 Javascript
JavaScript DOM 学习第二章 编辑文本
2010/02/19 Javascript
js中style.display=&quot;&quot;无效的解决方法
2014/10/30 Javascript
javascript常用方法汇总
2014/12/02 Javascript
JS实现旋转木马式图片轮播效果
2017/01/18 Javascript
nodejs搭建本地服务器并访问文件的方法
2017/03/03 NodeJs
Ionic + Angular.js实现图片轮播的方法示例
2017/05/21 Javascript
AngularJS解决ng-if中的ng-model值无效的问题
2017/06/21 Javascript
ReactNative中使用Redux架构总结
2017/12/15 Javascript
react-native使用leanclound消息推送的方法
2018/08/06 Javascript
node.js中express模块创建服务器和http模块客户端发请求
2019/03/06 Javascript
javascript头像上传代码实例
2019/09/28 Javascript
vue路由切换之淡入淡出的简单实现
2019/10/31 Javascript
Vue开发中遇到的跨域问题及解决方法
2020/02/11 Javascript
js中forEach,for in,for of循环的用法示例小结
2020/03/14 Javascript
vue 添加和编辑用同一个表单,el-form表单提交后清空表单数据操作
2020/08/03 Javascript
JavaScript构造函数原理及实现流程解析
2020/11/19 Javascript
react中hook介绍以及使用教程
2020/12/11 Javascript
vue 使用饿了么UI仿写teambition的筛选功能
2021/03/01 Vue.js
python类继承用法实例分析
2015/05/27 Python
Python fileinput模块使用实例
2015/05/28 Python
2018年Python值得关注的开源库、工具和开发者(总结篇)
2018/01/04 Python
Python爬虫天气预报实例详解(小白入门)
2018/01/24 Python
python+os根据文件名自动生成文本
2019/03/21 Python
python使用建议与技巧分享(一)
2020/08/17 Python
Nordgreen美国官网:在线购买极简主义斯堪的纳维亚手表
2019/07/24 全球购物
大四本科生的自我评价
2013/12/30 职场文书
经典的毕业生自荐信范文
2014/04/14 职场文书
2014年行政工作总结
2014/11/19 职场文书
学生检讨书怎么写
2015/05/07 职场文书
指导老师鉴定意见
2015/06/05 职场文书