Javascript 在a<;选择>;下拉列表
我想创建一个嵌套的Javascript 在a<;选择>;下拉列表,javascript,angularjs,ng-repeat,Javascript,Angularjs,Ng Repeat,我想创建一个嵌套的ng repeat,它允许我在下拉菜单中包含调查JSON所有章节中的所有问题。做这件事的“正确方法”是什么?我可以看到为这个特定的用例创建一个数组,但我宁愿不这样做 <select class="form-control" ng-model="chapter.jumpId"> <span ng-repeat="chap in survey.chapters"> <option ng-repeat="question in c
ng repeat
,它允许我在下拉菜单
中包含调查JSON所有章节中的所有问题。做这件事的“正确方法”是什么?我可以看到为这个特定的用例创建一个数组,但我宁愿不这样做
<select class="form-control" ng-model="chapter.jumpId">
<span ng-repeat="chap in survey.chapters">
<option ng-repeat="question in chap.questions" value="question.verbose">
{{ question.id }}
</option>
</span>
</select>
{{question.id}
Html:
<select ng-repeat="chap in survey.chapters">
<option ng-repeat="question in chap.questions" value="question.verbose">
{{ question.id }}
</option>
</select>
-----
<select>
<option ng-repeat="sOption in sOptions" value="sOption.verbose">
{{ sOption.id }}
</option>
</select>
$scope.survey = {
"chapters" : [
{
"questions" : [
{
"verbose" : "que1_verbose1",
"id": "que1_1"
},
{
"verbose" : "que1_verbose2",
"id": "que1_2"
}
]
},
{
"questions" : [
{
"verbose" : "que2_verbose1",
"id": "que2_1"
},
{
"verbose" : "que2_verbose2",
"id": "que2_2"
}
]
}
]
};
$scope.sOptions = [];
angular.forEach($scope.survey.chapters, function(chapter) {
angular.forEach(chapter.questions, function(question) {
$scope.sOptions.push(question);
});
});
你基本上明白了,你也可以使用ng选项。是的,请更改span以选择,你很乐意继续。谢谢,@AlpeshPrajapati-你让我走上了正确的轨道(
ngOptions
通常很有用)。然而,不幸的是,我的问题仍然存在,因为选择使用该工具:我现在仍然需要获得所有章节的所有问题,这样类似于以下内容的内容才能起作用:
@AlpeshPrajapati如果您能够在回答中详细说明这一点,我也很乐意将此问题标记为已回答。不幸的是,这将创建两个单独的选择列表-而我需要将两个列表的内容压缩到一个
标记中。嗨,Darshan-我试图避免使用也位于范围中的数组。我在我的问题中写道:“我可以看到为这个特定的用例创建一个数组,但我宁愿不这样做。”我将把这个问题留一段时间——如果我没有得到任何答案,我会给你答案,前提是这确实是实现我目标的唯一方法。到目前为止,我没有任何其他解决方案。我做过这方面的研究,但每个人都遵循类似的方法。