Javascript 将动态创建的ng模型嵌套到ng repeat中
我知道这个问题有很多问题,但我无法解决我的问题 我的项目的最终结果是创建一个xml文件 为此,我需要要求用户选择一个根节点,根据他的选择,我向数据库发送一个请求,以检索此根节点的可能子节点。然后他选择了他想要的子节点,我发送了另一个请求来检索这个节点可能的子节点,依此类推,直到我找到一个叶子 所以我需要使下拉列表动态显示。但是为了能够创建xml,我需要保存他所做的每个选择,所以我需要将所选节点保存在单独的ng模型中 基于其他问题和答案,我尝试了以下方法: html:Javascript 将动态创建的ng模型嵌套到ng repeat中,javascript,angularjs,Javascript,Angularjs,我知道这个问题有很多问题,但我无法解决我的问题 我的项目的最终结果是创建一个xml文件 为此,我需要要求用户选择一个根节点,根据他的选择,我向数据库发送一个请求,以检索此根节点的可能子节点。然后他选择了他想要的子节点,我发送了另一个请求来检索这个节点可能的子节点,依此类推,直到我找到一个叶子 所以我需要使下拉列表动态显示。但是为了能够创建xml,我需要保存他所做的每个选择,所以我需要将所选节点保存在单独的ng模型中 基于其他问题和答案,我尝试了以下方法: html: <select
<select ng-model='selectedstandard' ng-options='item for item in standard' ng-change="getTypes()">
<option value="">select standard</option>
</select>
<select ng-model='selectedstandard[$index]' ng-options='item for item in standard' ng-change="getTypes()" ng-repeat="node in nodes">
<option value="">select standard</option>
</select>
但是我得到一个错误,告诉我$index没有定义
我想名为selectedstandard和selectedstandard[$index]的两个ng模型不是一个好主意,但我需要以某种方式初始化循环。这个$index来自哪里?你把ng repeat的$index搞错了吗?老实说,我真的不知道,因为我试图修改我在另一个问题中看到的一些代码。但是我猜它是ng-repeat中的$index。那么您不能在这里使用它,尽管在头文件中使用$scope.selectedstandard设置后:{}?它是在前面设置的,http请求不会影响它。我知道http不会影响它,因为它只是使用它发出请求,但是scope.getTypes发出http请求,然后设置“selectedstandard”所以在这里我想问一下这个逻辑[if/else]应该做什么,你在检查什么$index,为什么?
$scope.nodes=[];
$scope.getTypes = function(){
$scope.types = $http({
method: 'GET',
url: 'http://localhost:8080/hello/types',
headers: {'Content-Type': 'application/json', 'standard' : $scope.selectedstandard}
}).success(function (data)
{
$scope.types=data;
var i=0;
var simpleTypesTemp = JSON.parse(JSON.stringify($scope.types));
for(var ty in $scope.types){
var valuetab=($scope.types[ty]).split(":");
simpleTypesTemp[ty]= valuetab[0]+":...:"+valuetab[(valuetab.length)-1];
}
});
if($index){
$scope.nodes.push($scope.selectedstandard[$index]);
}
else{
$scope.nodes.push($scope.selectedstandard);
}
$scope.getNameSpace();
}