Javascript Angularjs:如何使用通用方法将不同的结果集与不同的控件绑定?
我对Angularjs是新手,面临一个问题 需求本身有点独特,以下是描述: 我有两个输入,两个下拉菜单和两个获取按钮,一旦我在第一个输入字段中输入一个url并单击获取按钮,它将使用“getApiResults”将所有“key”not值绑定到下拉菜单方法,但当我在第二个输入字段中添加其他url并单击“获取”按钮时,它将从第二个api中获取所有键并绑定下拉列表,但问题是,由于我们正在更新“字段名”,它还将第一个下拉列表与第二个api结果再次绑定。我不知道如何处理这个问题 请帮忙。。以下是完整的代码:Javascript Angularjs:如何使用通用方法将不同的结果集与不同的控件绑定?,javascript,jquery,angularjs,Javascript,Jquery,Angularjs,我对Angularjs是新手,面临一个问题 需求本身有点独特,以下是描述: 我有两个输入,两个下拉菜单和两个获取按钮,一旦我在第一个输入字段中输入一个url并单击获取按钮,它将使用“getApiResults”将所有“key”not值绑定到下拉菜单方法,但当我在第二个输入字段中添加其他url并单击“获取”按钮时,它将从第二个api中获取所有键并绑定下拉列表,但问题是,由于我们正在更新“字段名”,它还将第一个下拉列表与第二个api结果再次绑定。我不知道如何处理这个问题 请帮忙。。以下是完整的代码:
<html lang="en">
收到
收到
angular.module(“myapp”,[])
.controller(“HelloController”,函数($scope,$http){
$scope.getApiResults=函数(apiURL){
$scope.fieldnames=[];
var serviceurl=apiURL;
$http.get(serviceurl).success(函数(数据){
$scope.fieldnames=数据;
});
};
});
它们都指向同一个范围变量。您可以对您的
getApiResults
函数进行一个小的更改:
$scope.getApiResults = function (dropdown, apiURL) {
$scope.fieldnames = [];
var serviceurl = apiURL;
$http.get(serviceurl).success(function (data) {
$scope.fieldnames[dropdown] = data;
});
然后在html上:
<button class="btn btn-danger" data-ng-click="getApiResults('dropdown1',url1)">
Get
</button>
<select class="form-control" ng-init="getApiResults('dropdown1',url1)"
data-ng-options="key as key for (key,value) in fieldnames['dropdown1']"
ng-model="selected"></select>
收到
不,这不起作用,因为我使用字段名[o]的键绑定,下拉列表值与列名绑定,随着您的更改,下拉列表将绑定到它们的值请不要要求我们做您的家庭作业
<button class="btn btn-danger" data-ng-click="getApiResults('dropdown1',url1)">
Get
</button>
<select class="form-control" ng-init="getApiResults('dropdown1',url1)"
data-ng-options="key as key for (key,value) in fieldnames['dropdown1']"
ng-model="selected"></select>