我对select标签使用普通选项,因为我必须在满足条件时才显示几个选项。我需要控制器中所选下拉列表的值来执行其他操作,但问题是我没有得到范围内的值。
<select id="selectView" ng-model="selectedView" ng-init="selectedView='plain'" ng-change=resultViewChanged()>
<option value="plain" >Plain</option>
<option value="grid" ng-if="user.gridView" >Grid</option>
<option value="box" ng-if="user.boxView">Box</option>
</select>`
现在,在控制器中,我只是想获取selectedView的值。我正在更改网格的下拉菜单,我尝试了两个警报,并且两者都没有在警报框中给出值网格。如何在控制器中获取所选选项的值?
$scope.resultViewChanged = function() {
alert($scope.selectedView.value); //Tried this undefined
alert($scope.selectedView);
}
感谢您的帮助
答案 0 :(得分:1)
所选值应存储在$ scope.selectedView(没有.value after)变量中,因为它在ng-model中定义。
所以,这个:
<select id = 'mankList'>
<option value='ALL' selected>Filter By Item</option>
<option data-book1 =undefined data-book2=undefined data-book3='Vegetables' data-book4='Food' data-book5=undefined> Onions </option>
<option data-book1 ='Fruit' data-book2=undefined data-book3=undefined data-book4='Food' data-book5=undefined> Grapes </option>
<option data-book1 ='Fruit' data-book2=undefined data-book3=undefined data-book4='Food' data-book5=undefined> Oranges </option>
<option data-book1 =undefined data-book2='Candy' data-book3=undefined data-book4='Food' data-book5=undefined>Jolly Rancher </option>
<option data-book1 =undefined data-book2=undefined data-book3=undefined data-book4=undefined data-book5='NOA'> Chair </option></select>
<ul><li>Fruit</li>
<li>Candy</li>
<li>Food</li>
<li>Vegetables</li>
</ul>
应提醒下拉列表中的选定值。
答案 1 :(得分:0)
怎么回事?
alert(document.getElementById('selectView').value);