javascript - AngularJS:如何在嵌套的 ng-repeats 中绑定(bind)数据?

标签 javascript angularjs loops model nested

我使用 Angular 从 $http 调用返回了一个嵌套很深的 JSON 对象。在我的模板中,我必须嵌套一些 ng-repeats 才能显示数据。我似乎无法弄清楚如何在文本输入上使用 ng-model 绑定(bind)数据。

我读了this question其中表示返回对象不是 $scope 中的自动数据,您必须遍历数据并实例化结构。我也尝试过同样的结果。

        // Seemingly unnecessary code
        angular.forEach(Object.keys($scope.sources), function(sourcename){
            $scope.sourceData[sourcename] = {};
            angular.forEach(Object.keys($scope.sources[sourcename]), function(key){
                $scope.sourceData[sourcename][key] = $scope.sources[sourcename][key];
        });

这是一个显示我尝试的 fiddle :

http://jsfiddle.net/c7z9C/2/

我只想将值填充到字段中并绑定(bind)到模型。在此先感谢您的任何建议。

最佳答案

您示例中的 HTML 有点不对。

这是一个working fiddle .

“不工作”input 只是在 ng-model 中有一些代码不工作。

首先,您不需要在 Angular 指令属性中插入 {{ }}。因此,这包括 ng-model。所以 {{key}} 不是必需的。

此外,sourceData 拼写错误。它应该是 sourcedata 并且大小写很重要。

所以 ng-model 的最终结果是 ng-model="sourcedata[key]":

    <li ng-repeat="(key,value) in sourcedata">
        WORKS: <input type="text" value="{{value}}" /><br/>
        DOESN'T: <input type="text" ng-model="sourcedata[key]" />
    </li>

关于javascript - AngularJS:如何在嵌套的 ng-repeats 中绑定(bind)数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22430753/

相关文章:

javascript - 正则表达式在字面声明时有效,但在使用 new 运算符和变量值声明时无效

javascript - 如何根据数组显示类别子类别

angularjs - Express Node 服务器中的 "SyntaxError: Unexpected token n"

c - 将文件中的文本读入嵌套循环

javascript - 在 $.each 循环中,获取两种不同类型的对象返回值和未定义

python - Azure OCR API 在 90 个图像后停止。如何修复连接错误?

javascript - 提取对象值并插入到字符串的确切位置

javascript - JQuery 和评估

javascript - 如何在没有双向绑定(bind)的情况下将 ngModel 传递给 AngularJS 组件?

javascript - 电子邮件黑名单和验证