gpt4 book ai didi

javascript - 使用 ng-options 创建下拉菜单

转载 作者:行者123 更新时间:2023-12-02 16:35:38 24 4
gpt4 key购买 nike

我想在我的 html 中使用 ng-options 创建一个下拉列表。我已经看过一些关于这个问题的引用文献,并给出了数据结构、变量等方面的差异。我不明白如何将信息从我的 Parse 后端传输到 html 前端的下拉菜单。

这是我正在运行的 html 的片段:

<div class="form-group" ng-repeat="category in allCategories.primary">
<select ng-model="category.primary" ng-options="bizCategories.primary for bizCategories in allCategories"></select>
</div>

这是与之配套的 Javascript:

var Categories = Parse.Object.extend("bizCategories");


var categories = new Categories();

$scope.primarySelect = function() {
var primary = new Parse.Query(Categories);
primary.find({
success:function(list){
$scope.allCategories = list;
}
})
}

Parse 数据库有一个名为 bizCategories 的集合,其中有一列名为 Primary,每行都有一个单词字符串。

这是 bizCategories 集合中的 Primary 图片: enter image description here

最佳答案

问题是 Parse 对象要求您使用 get('columnName') 函数来读取值,而 Angular 最适合普通对象。

我所做的是使用 Underscore 库将 Parse 对象映射到简单对象,如下所示:

$scope.primarySelect = function() {
var primary = new Parse.Query(Categories);
primary.find({
success:function(list){
$scope.allCategories = _(list).map(function(item) {
return {
// not sure if you need the ID, remove this line if you don't
id: item.id,
primary: item.get('primary'),
// add any other properties you need here
};
});
}
});
}

如果需要,您还可以告诉 Underscore 将其缩减为唯一列表(映射后必须执行此操作)。

哦,您还应该将 ng-model 设置为您想要保存所选对象的范围内的某个内容(例如 ng-model="selectedPrimary")。如果您只想要选定的文本,请告诉我,我会给您一个示例,说明其外观。

关于javascript - 使用 ng-options 创建下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27957535/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com