ibm*_*khd 20 html-select angularjs
我想添加一个带选项AM,PM和angularjs的html选择,我需要的是拥有密钥和选项的值是相同的:
<option value="AM">AM</option>
<option value="PM">PM</option>
Run Code Online (Sandbox Code Playgroud)
我的HTML看起来像这样
<select ng-model="ampm" ng-options="k as v for (k , v) in ampms"></select>
Run Code Online (Sandbox Code Playgroud)
我的控制器看起来像
$scope.ampm = (new Date().getHours()) >= 12 ? 'PM' : 'AM';
$scope.ampms ={"AM":"AM","PM":"PM"};
Run Code Online (Sandbox Code Playgroud)
每件事都很好.
我的问题是为什么当我使用数组时我不能拥有相同的东西(我尝试了ng-options中的所有选项)
$scope.ampms =["AM","PM"];
Run Code Online (Sandbox Code Playgroud)
无论我做什么,我总能得到这个
<option value="0">AM</option>
<option value="1">PM</option>
Run Code Online (Sandbox Code Playgroud)
我想要的是使用像上面这样的数组,选项有键和值相同.
dnc*_*253 26
使用AngularJS,您无需担心选项的价值.我见过的所有选择ng-options都有0到0的值.如果您只是在寻找带有两个选项的下拉列表,那么就可以这么简单
<select ng-model="ampm" ng-options="currOption for currOption in ['AM', 'PM']"></select>
Run Code Online (Sandbox Code Playgroud)
Ben*_*esh 10
这是Angular中ng-options的默认行为.如果未指定键名,angular将自动选择使用索引而不是键.执行该操作的代码可以在Angular的Github存储库的/src/ng/directives/select.js的第405行看到.
它甚至不能被"值作为值中的(索引,值)"强制使用.
但是因为dnc253只是用他的答案打败了我(当我打字时它出现了)......你不必担心它,Angular会自动为你做这一切.
| 归档时间: |
|
| 查看次数: |
30319 次 |
| 最近记录: |