【发布时间】:2017-10-26 21:05:22
【问题描述】:
我正在尝试将值作为下拉列表或选择字段获取,这些字段位于 comments 数组中。我正在尝试drop down 中commentText 值的comments 数组,我该如何在ng-option 中执行此操作? My Plunker
例如:
我做了下拉ng-option 首先没有数组值。现在我在下拉列表中寻找 [commentText": "7A"] 的 cmets 数组值,我该怎么做。
我试过 ng-options="item.comments.commentText for item in questions" 它不适合我。如何解决?
我的数据:
$scope.questions = [
{
"_id": "59df6c37b6748bc809050699",
"user": {
"_id": "59df6a76b6748bc809050697",
"profileImageURL": "modules/users/client/img/profile/default.png"
},
"__v": 1,
"comments": [
{
"created": 1507897712831,
"email": "ms@e21designs.com",
"name": "Maniselvam selvam",
"link": "https://drive.google.com/drive/u/0/folders/0B5c-p1bvkfS9REJHMGhMY1BTV1k",
"commentText": "7A"
}
],
"questionid": "",
"created": "2017-10-12T13:20:55.383Z"
}
]
我的 HTML:
<label>1. Without array value</label>
<select ng-model="class" ng-options="item.title for item in questions">
</select>
</div>
<div style="margin-top: 11px;">
<label>2. With comments array value</label>
<select style="margin-left: 20px;" ng-model="class" ng-options="item.comments.commentText for item in questions">
</select>
</div>
【问题讨论】:
-
这能做到吗
ng-options="element.commentText for element in class.comments"?class来自您选择的问题的 ng-model。否则你需要flatten你的双数组 -
感谢您的评论,如果可能的话,您能否更新我的 plunker...
-
只需将您的第二个选择更改为
<select style="margin-left: 20px;" ng-model="class2" ng-options="element.commentText for element in class.comments">。确保您的 ng-model 不同 -
我已经用你的答案更新了我的 plunker plnkr.co/edit/ultpnNcFbIdFXur4XJU3?p=preview,它对我不起作用,所以请检查并更新,我不知道我在哪里做错了
-
我的意思是您首先选择一个问题(这就是第一个选择的目的),然后从该问题的 cmets 列表中选择一条评论。毕竟你有一个嵌套数组。如果你想要所有问题的所有 cmets,那么你需要先展平你的数组,我之前给了你一个例子的链接