一、问题描述
js源代码:
/*专业初始化初始化:warn 必须初始化具体*/
$scope.majorList = [
{ id:0 ,name:"1"}
];
/*岗位初始化:position*/
$scope.positionList = [
{ id:0 ,name:"2"}
];
//从后台查询下拉框的类型;
questionService.getMajorType().then(
function (res) {
$scope.majorList = [];
for (var i = 0; i < res.data.length; i++) {
/*初始化*/
var a = {
id:res.data[i].id,
name: res.data[i].name
};
$scope.majorList.push(a);
}
}
);
/*当下拉选项变化的时候,调用该方法*/
$scope.professionChange=function () {
var index=document.getElementById("major").selectedIndex;//获取当前选择项的索引.
$scope.proChoosedId=document.getElementById("major").options[index].value;//获取当前选择项的值.
var num = $scope.proChoosedId.replace(/[^0-9]/ig,"");
questionService.getPositionType({professionId:num}).then(
function (res) {
$scope.positionList= [];
for (var i = 0; i < res.data.length; i++) {
/*初始化*/
var a = {
id:res.data[i].id,
name: res.data[i].positionName
};
$scope.positionList.push(a);
}
}
);
};
html源代码:
<label class="col-lg-1 control-label" for="major">专业</label>
<div class="col-lg-2">
<select class="input-sm form-control" name="id" id="major"
ng-options="option.id as option.name for option in majorList"
ng-model="q.id" ng-change="professionChange()">
</select>
</div>
<label class="col-lg-1 control-label" for="position">岗位</label>
<div class="col-lg-2">
<select class="input-sm form-control" name="id" id="position"
ng-options="option.id as option.name for option in positionList"
ng-model="q.id">
</select>
</div>
基础:初始化的时候,写死的;
重置时:
但是,为什么下拉框下面会有个空格:
二、尝试
【尝试1】
ng-model绑定:这里要看看自己是不是绑定错了ng-model,绑定不同的ng-model会有不同的效果;
或者
点击下拉三角新:这时候,父级专业是一个空+3个从后台查出来的值;
下拉框下面那里有个空格;此时的子级是:
但是,当你在父级中选中其中的某一个时候,再次父级的下拉三角形,就不会有空格了;
但是!此时的子级也变化了:
这是为什么?
我的理解是,刚开始,初始化的时候,直接加载进去的:
但是,当我从后台查询到这3类数据的时候,应该清空了啊,不会有空啊?
为什么无论父级还是子级,都会有一个空格???
仍在尝试中