使用原生JS动态生成Select,根据前面的Select的option生成二级Select
需求描述:
- 后台数据会把第一层的Select的option数据 传递给前台页面,页面根据数据的有无创建第一个Select
- 如果后台有数据,则根据第一个Select选中的option 下面是否有数据 生成第二个Select。当点击第一个个Select的option的时候会想后台发送数据请求,后台根据数据库的返回给前台。
- 点击第二个Select的option的逻辑和点击第一个Select是一样的
如果存在3个select,点击第一级的select中的某一个option,如果该option没有请求到数据,则第二个和第三个select会消失
代码步骤
在请求这个页面的时候就会查询出数据返回给当前的页面,页面是使用vm模版的,以下是使用的标签
<div class="col-xs-4">
<select id="rootId" onchange="getTypData()">
<option>
==请选择类型==
</option>
#foreach ($root in $!{roots})
<option id="${root.route}" name="${root.name}" value="$!{root.route}">
$!{root.name}
</option>
#end
</select>
</div>
</select>
监听Select的onChange事件,实现getTypeData()
function getTypData(route) {
var params = {};
if (typeof(route) == "undefined" || route.length == 0) {