ng重复不更新

时间:2013-05-21 12:59:04

标签: angularjs angularjs-scope angularjs-ng-repeat

您好我是角度js的新手,我希望有人可以帮我解决以下问题。

我有一个名为numAdults的数字字段,我需要显示一组字段(例如姓名,地址,电话等)numAdult次,以便为每个人获取这些信息。

以下是问题jsfiddle link

的问题解答

这里还是控制器代码的概述

function bookingController($scope){
$scope.numAdults = 1;
$scope.personLoop = function(){
    console.log('personLoop called')
    return new Array($scope.numAdults);
    //return new Array(2);

}

html

<label for="book_num_adults">Number of adults:</label>
<input id="book_num_adults" type="text" ng-model="numAdults">


  <div class="row" ng-repeat="t in personLoop()" style="border:2px solid red;margin-top:10px">
      <h4>Person {{$index+1}}</h4>
       <input placeholder="name"><br>
       <input placeholder="address"><br>
       <input placeholder="telephone"><br>
  </div>

您能否帮我解决如何将其转换为模块(不仅仅是基于控制器)

提前谢谢!

1 个答案:

答案 0 :(得分:0)

你的小提琴充满了错误......

http://jsfiddle.net/bRgTR/5/

  1. 框架下&amp;扩展,您需要将第二个下拉列表从“onLoad”更改为“No wrap”选项之一
  2. 您的controller定义已被破坏。它应该是:.controller('name', ['depname', function (depname) { })]); - 你的关闭数组错位了。
  3. 你应该使用分号。
  4. 您不会在JavaScript中创建包含5个项目的数组:var a = new Array(5),它会创建一个包含5的数组。相反,您应该var a = []; a.length = 5;