Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 第一次加载时如何选择AngularJS模型?_Javascript_Angularjs_Angularjs Scope - Fatal编程技术网

Javascript 第一次加载时如何选择AngularJS模型?

Javascript 第一次加载时如何选择AngularJS模型?,javascript,angularjs,angularjs-scope,Javascript,Angularjs,Angularjs Scope,我正在使用AngularJS填充一个选择选项列表 默认情况下,我会根据字段选择一个选项。 但问题是我无法在第一次加载时获取所选项目的id 当我更改选项时,它会起作用 请检查此plunker代码:我建议使用ng选项: <select ng-model="selectedItem" ng-options="item.id as item.text for item in list"> 我正在使用$resource获取项目,可能是因为控件从未进入forEach内部。我该怎么办?@Litt

我正在使用AngularJS填充一个选择选项列表

默认情况下,我会根据字段选择一个选项。 但问题是我无法在第一次加载时获取所选项目的id

当我更改选项时,它会起作用


请检查此plunker代码:

我建议使用ng选项:

<select ng-model="selectedItem" ng-options="item.id as item.text for item in list">

我正在使用$resource获取项目,可能是因为控件从未进入forEach内部。我该怎么办?@LittleLebowski,将forEach放入
query()
回调函数中。(您也可以
$watch
更改
列表
,并将forEach放在watch回调中。)我将其标记为正确答案,但在我的情况下,我将使用AngularUI-Select2,它声明指令不适用于ng选项,并建议使用ng repeat。使用ng repeat?@LittleLebowski解决方案的任何解决方案,只需将forEach添加到原始Plunk中的控制器中,即可设置初始模型值。看见在这个新的plunker中,我还将数字转换为字符串,因为在ng repeat中,值是字符串,而不是数字。
angular.forEach($scope.list, function(item, key){
  if(item.isMandatory) {
    $scope.selectedItem = item.id;
  }
});