jQuery-select 级联问题

项目合作 项目合作 主题:1030 回复:2135

jQuery-select 级联问题

泛泛之交 发布于 2017-02-22 字数 146 浏览 975 回复 3

所有数据是先加载到缓存中,当我点击职能分类的时候显示的是职能的分类,选中其中一项,然后在下个一select中可以显示具体的技能列表。。怎么实现

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(3

泛泛之交 2017-10-20 3 楼

方法一:当你点击“职能分类”时并选择其中一项时,可以把用户所选择的的项的分类标识通过Ajax传递给服务器端,然后再找到相应的结果,并插入到另一个select里。

方法二:所以将所有的下拉列表数据全部载入到页面的JavaScript里,然后当点击职能分类时就过滤这些列表数据,然后动态的改变另一个select下拉列表的选项。

浮生未歇 2017-07-29 2 楼

哦,一个三级联动的select选择框么?
说下想到的几个方法:
方法A:
1.把所有的职能,职能的子什么的,放进一个xml文件,建立父子关联,然后服务启动的时候加载。
2.用JS可以模拟MAP的,具体实现就不说了,把三层分类从缓存中读出,然后放进二个“map”中去,key,value可以是{父ID,Array};
3.页面加载的时候,先把所有的根都加载出来就可以了,然后加个属性,比如childId,或者id用多个分割符隔开,如“ID#子ID”,当用户触发onchange的时候,用子ID,去取下一个MAP,获取到所有的子Array,然后动态加载子Array到下拉框中,以此类推,可以加N多层
优点:
一次加载,负载小,当然步骤1,2都是应该是个常量,不需要反复加载
写个线程去轮询xml文件,如果发现文件的最后修改时间和记录的不一致,可以去热加载,重新初始化步骤1,2,做到热加载,不需要重启服务了。
方法B:ajax后台调用,传回父ID,去返回子数组,详细就不说了,不难

偏爱自由 2017-03-23 1 楼

1.绑定父级菜单的 onchange事件,当变化后根据父级菜单选中值去内存中找到对应的子菜单列表
2.将子菜单列表循环写入子菜单标签内,代码:

for(var i=0; i<provinceArray.length; i++){
myoption =new Option(provinceArray[i].text, provinceArray[i].code);
dropMyProvince.options[dropMyProvince.options.length]=myoption;
}