【发布时间】:2015-10-07 18:05:28
【问题描述】:
当某些值在标题处共享开头字母时,在下拉菜单中键入时,我的 ng-model 会更新为第一个值。
<div ng-app="dropDown" ng-controller="dropDownController">
<select name="StateId" ng-model="selectedState" class="form-control" ng-change="selectedStateChanged()" ng-options="(states.Abbrev + ' - ' + states.Name) for states in states"></select>
<span>{{selectedState.Name||''}}</span>
</div>
Plnkr http://plnkr.co/edit/pLVzK18iJxrmrL9Oiw4b?p=preview
要测试的场景:
- 单击表格的任何部分。
- 单击 Tab 以聚焦下拉菜单。
- 开始输入“TX”
结果: - 'TX - TEXAS' 选项显示在下拉菜单中。 - $scope.selectedState 值为 {Name:'TENNESSEE'}
预期:
- “TX - TEXAS”选项显示在下拉菜单中。
- $scope.selectedState 值应该是 {Name:'TEXAS'}
我将使用普通的 javascript 来解决这个问题,与此同时,我想知道是否有任何 AngularJS 解决方案。
提前致谢。
【问题讨论】:
标签: javascript angularjs drop-down-menu angular-ngmodel