在angularjs中使用ng-repeat内的ng-model进行绑定

时间:2013-05-09 17:20:57

标签: javascript angularjs

我正在尝试将模型“用户”绑定到输入字段列表。我事先不知道这些字段,所以我要编写一个通用代码来根据字段设置表单。

<script>
    function MyController($scope){
        $scope.fields  = ['name','password','dob'];
        $scope.user1 = {name:"Shahal",password:"secret"}
    };
</script>
<div ng-app ng-controller="MyController">
    <ul>
        <li ng-repeat="field in fields">
            <label>{{field}}</label><input type="text" ng-model="user1.{{field}}">
        </li>
    </ul>
    <pre>{{fields}}</pre>
</div>

我正在尝试遍历字段并显示每个字段的输入字段(范围内可用)。但是绑定是不正确的,因为我正在尝试评估ng-model中的表达式。

基本上我正在尝试显示3个输入字段(名称,密码,dob),并且对象user1附加到相应的字段。

这是fiddle

任何帮助?

1 个答案:

答案 0 :(得分:6)

以下将解决您的问题

<script>
    function MyController($scope){
        $scope.fields  = ['name','password','dob'];
        $scope.user1 = {name:"Shahal",password:"secret"}
    };
</script>
<div ng-app ng-controller="MyController">
    <ul>
        <li ng-repeat="field in fields">
            <label>{{field}}</label><input type="text" ng-model="user1[field]">
        </li>
    </ul>
    <pre>{{fields}}</pre>
</div>