Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.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 当范围更改时,如何让ng select更新?_Javascript_Angularjs - Fatal编程技术网

Javascript 当范围更改时,如何让ng select更新?

Javascript 当范围更改时,如何让ng select更新?,javascript,angularjs,Javascript,Angularjs,我在表单上方有一个表,当选中一行时,它会用数据填充表单。该表单有一个select元素。选择表中的第一行后,数据将正确填充,并显示正确选择的选项。在第二次和后续选择中,未显示正确的选定选项。在chrome开发工具中,我可以看到值正确地更新,但它没有直观地显示出来 我错过了什么?如何使正确的选项以视觉方式显示 <select name="updateCategory" ng-model="selectedPermission.permission.category_id">

我在表单上方有一个表,当选中一行时,它会用数据填充表单。该表单有一个select元素。选择表中的第一行后,数据将正确填充,并显示正确选择的选项。在第二次和后续选择中,未显示正确的选定选项。在chrome开发工具中,我可以看到值正确地更新,但它没有直观地显示出来

我错过了什么?如何使正确的选项以视觉方式显示

<select name="updateCategory" ng-model="selectedPermission.permission.category_id">
       <option value="{{cat.id}}" ng-selected="cat.selected" ng-repeat="cat in selectedPermission.permission_categories">
              {{cat.name}}
       </option>
</select>

我会使用ng选项,而不是
,这样您就可以轻松地将您的选择与ng模型关联起来。有关更多信息,请参阅

比如:

<select name="updateCategory" ng-model="cat" ng-options="cat.id as cat.name for cat in selectedPermission.permission_categories">
</select>


请记住,我不确定您的数据结构,但这会让您走上正轨。

为什么不在选择时触发事件,而不是使用$watch?我会使用ng选项,而不是您可以轻松地将您的选择与ng模型关联起来。请参阅文档,此处使用的指令不止一个。使用$rootScope更容易。虽然我是新手,但这可能不合适。是的,您应该使用带有$scope变量的ng模型属性的ng选项。你能给我们看看你的新代码吗?好的,ng选项解决了这个问题。我以为没用,但我犯了一个拼写错误。请提交答案以获得积分。在文档中引起我混乱的一个注释是:为数组中的项选择标签。更容易理解的方法是:将值作为数组中项的标签
<select name="updateCategory" ng-model="cat" ng-options="cat.id as cat.name for cat in selectedPermission.permission_categories">
</select>