gpt4 book ai didi

javascript - 收到 JSON 后,将按钮添加到 html 模板

转载 作者:行者123 更新时间:2023-11-28 01:40:11 24 4
gpt4 key购买 nike

我想在用户访问网站时从我的 API 接收到 JSON 后,动态地将按钮添加到 DOM。我已经实现了获取数据的功能,但现在我无法将按钮动态添加到 HTML 模板。此外,我不知道如何在特定模板的第一个页面加载时调用函数。

这是我的代码:

app.run(function($rootScope, $http, ApiService) {
$http.get('connection.properties').then(function (response) {
ApiService.getAllElements($rootScope);
});
});

在我的 ApiService 中我有这个功能:

        getAllElements : function($scope) {
var requestData = {
'username' : 'user123'
};

this.doRequest(requestData).success(function(data) {
if (data.success) {
console.log(data); // add buttons
}
}).error(function() {
alert('Sorry bro.');
});
}

我是一个完全的 AngularJS 初学者,所以我不知道如何做这个的正确方法。任何帮助将不胜感激。

编辑:

数据 JSON 结构如下所示:

{"success":true,"msg":"user active,1 element in db","userid":"1","elements":[{"element_id":"1","name":"Element1","description":"This is element 1"}]}

在我的 profile.html 模板中我有这个静态按钮:

    <div class="btn-group btn-group-elements">
<button type="button" class="btn btn-default" ng-model="element" ng-change="save(true)" btn-radio="'1'">Element1</button>
</div>

最佳答案

您可以在这些数据中包含多个“元素”吗?在那种情况下,ng-repeat 很棒:

初始化你的元素:(在 Controller 中)

$scope.elements = [];

通过 angularjs 原生指令将模板链接到 $scope :

<div class="btn-group btn-group-elements">
<button ng-repeat="element in elements" type="button" class="btn btn-default" ng-click="doSomething( element, $index )">{{ element.name }}</button>
</div>

获取数据:

    getAllElements : function($scope) {
var requestData = {
'username' : 'user123'
};

this.doRequest(requestData).success(function(data) {
if (data.success) {
$scope.elements = data.elements; // add buttons
}
}).error(function() {
alert('Sorry bro.');
});
}

关于javascript - 收到 JSON 后,将按钮添加到 html 模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26657713/

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