Angularjs ng-options selected value of dropdownlist
Angularjs ng-options selected value of dropdownlist
我使用自定义指令在下拉列表中显示年份。这是指令的模板。
template: '<select class="form-control" ng-model="joining.Year" ng-options="year for year in Years"></select>'
Html就是这样
<div years-dropdown range="50"></div>
年份是一个字符串数组。年份字段在我的服务器端模型中是字符串类型。所选值正确存储在数据库中,但是当我重新加载页面(从数据库中获取模型)时,我在控制器中获得了正确的值,但值未在下拉列表中显示为选定值。
编辑当我更改下拉列表的选择并检查html时,还有一件事,它仍然将默认值显示为已选择(第一个选项具有选定的属性)。但是,我的范围对象已正确更新。
问题是$scope.joining.Year
和Years[$index]
不是同一个对象引用。 我不相信ngOptions
指令使用等价逻辑。 所以这是手动执行此操作的修复程序(将其放入您的.then()
函数中:
for(var i = 0; i < $scope.Years.length; ++i) {
if(angular.equals($scope.Years[i], $scope.joining.Year) {
//the fix to get years[i] if it's equal to joining.Year
$scope.Years[i] = $scope.joining.Year;
}
}
//finally, apply data into joining
angular.extend($scope.joining, data);
相关文章:
- HighChart : Usage of setData
- 引导选择DropDownList不显示
- html+javascript:如何在某些条件下禁用dropdownlist中的null选项
- HTML Dropdownlist未映射到MVC模型
- Dropdownlist using javascript
- Javascript:如何检查DropDownList是否被禁用
- Difference between methods of defining JavaScript 'class
- ASP.NET dropdownlist在服务器button_click中为空,ddl在客户端填充
- 为什么我在下面的..of循环中得到意外令牌
- Appending the innerhtml of <th>
- Animation cuts off multiple lines of text in <p>
- javascript: functionname() instread of functionname()
- jQuery使用.of()删除事件处理程序时出现的问题
- Three.js issue creating meshes outside of loader's load(
- jquery in the middle of html
- JavaScript equivalent of C#'s DynamicObject?
- nodejs console.log of object
- value of jquery sortable
- Angularjs ng-options selected value of dropdownlist
- onchange of dropdownlist not clearing second dropdownlist(ca