2013-03-27 20 views
1

对于angularjs是新手,所以我不确定如何最好地表达这个问题,所以这可能是重复的。我有一张表,我想填充一个标签和一些复选框。每一行代表表示“通过”或测试指标有两个复选框“失败”如何在angular.js中动态创建模板

function ListController($scope) { 
    $scope.items = [ 
     {name: 'Feature X', flash: false, html: false}, 
     {name: 'Feature Y', flash: false, html: false} 
    ]; 
} 

我有表正确填充,但什么我不知道的是如何动态创建该表?我希望能够提交这些数据并在选择新测试时创建一个新表。我现在可以看到调用此函数的唯一方法是在文档的初始化过程中,我看不到如何通过任何附加值来根据测试更改“项目”节点。下面拨弄:

http://jsfiddle.net/3Lcue/

回答

1

您可以使用$resource从服务器提交/检索数据:

app = angular.module("Test", ["ngResource"]) 

function ListController($scope, $resource) { 
    var Test = $resource("/tests/:id", {id: "@id"}); 
    $scope.items = Test.query() 

    $scope.addTest: function() { 
     $scope.items.push($scope.newTest) 
     $scope.newTest = {} 
    } 
} 

然后newTest.namenewTest.flashnewTest.html在视图中使用ng-model绑定。

+0

最终这将是理想的+1。在短期内,有没有办法通过函数调用传递一个值或创建一个模板? – Shane 2013-03-27 23:27:21

+1

@Shane在这种情况下,该示例与$ resource部分相同。在视图中绑定'newTest'字段并使用'addTest'方法。 – alf 2013-03-28 00:57:08