AngularJS:如何为输入类型生成动态ng模型[text]

时间:2016-01-06 15:52:33

标签: javascript angularjs

我目前的情况是:我正在做嵌套重复,如下所示:

<form name="task_form" ng-app="myApp" ng-submit="tasksubmit()">    
 <ul class="items-list">
      <li ng-repeat="task in taskslist | orderBy:orderProp">
      <p>
        <strong>{{task.title}}</strong>
      </p>
      <input type="text" ng-model="task_input_values[task.id]" >
     </li>
    </ul>
</form>

如果在tasklist数组中我有100 + tasks,那么这意味着ng-model的{​​{1}}值超过100 <input type=text>。在这里我使用ng-model="task_input_values[task.id]"它给我像{"14":"sometext here"}这样的数组我不知道如何捕获id 14input value sometext here }。而且,如果你有更好的逻辑,请帮助我。我是angularJS的新手。

2 个答案:

答案 0 :(得分:0)

您可以直接编辑您要迭代的对象:

$document[$doc_id][]= array( 'user_id' => $user_id
                       , 'doc_type' => $doc_type
                       , 'id_number' => $id_number
                       , 'issuer' => $issuer
                       , 'expiry_date' => $expiry_date
                       , 'doc_name' => $doc_name
                       , 'doc_path' => $doc_path
                       , 'name' => $name
                      );

答案 1 :(得分:0)

观看现场演示:live demo 您只需要将tasks变量用作对象数组:

$scope.taskslist = [ 
     {title: "I am first text input"}, 
     {title: "I am second text input"} 
    ];

然后绑定到ngRepeat中对象的value属性:

<form name="task_form" ng-app="myApp" ng-submit="tasksubmit()">    
     <ul class="items-list">
         <li ng-repeat="task in taskslist | orderBy:orderProp">
            <p>
               <strong>{{task.title}}</strong>
            </p>
            <input type="text" ng-model="task.title" >
         </li>
     </ul>
</form>

由于tasks是一个数组 - 您不需要指定ID tasks[$index]为您提供标题的值;)例如:tasks[1]为您提供: {text: "I am second text input"}