如何在按钮点击时以角度.js动态添加行?

时间:2014-07-27 23:28:27

标签: javascript jquery angularjs

我在angular.js中创建一个列表视图,当我获取静态数据时,我能够创建列表.as在给定的小提琴。http://jsfiddle.net/65Cxv/50/.But我需要动态生成行,而我需要创建行时需要创建行用户单击按钮。我需要创建具有相同文本的列表示例("列表")但不同的ID如(" 0"," 1"," 2" ...等)。可以生成列表..?这里我想做...

<!DOCTYPE html>
<html ng-app="myApp">
<head>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.14/angular.min.js"></script>
<script src="//code.jquery.com/jquery.min.js"></script>
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet" type="text/css" />
<script src="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>

  <meta charset="utf-8">
  <title>JS Bin</title>
</head>
<body>
<button type="button" class="btn btn-primary">Primary</button>
<ul ng-controller="ListController">
    <li>
        <a ng-click=></a>
    </li>
</ul>



</body>

</html>

JS代码:

var myApp = angular.module('myApp',[]);

myApp.controller('ListController', function($scope) {
  alert('--')
]);

1 个答案:

答案 0 :(得分:1)

通过将新对象推送到数据阵列来添加数据模型。:

$scope.items = [
    {name: 'item1', content: 'content1'},
    {name: 'item2', content: 'content2'},
    {name: 'item3', content: 'content3'}
];
/* bind this to `ng-model` of 2 inputs in html*/
$scope.activeItem={ name: '', content:''}

$scope.addItem=function(){
   $scope.items.push( $scope.activeItem);
   $scope.activeItem={} /* reset active item*/

}

在html中使用

<button ng-click="addItem()">Add</button>

DEMO