如何使用AngularJS添加动态文本字段

时间:2014-05-21 15:03:47

标签: angularjs

我的问题更多的是关于这种情况下的最佳做法:

我有一个表单,必须允许用户输入n个想法,每个想法都在一个独立的文本字段中。理想情况下,最后一个文本输入旁边会有几个按钮,以允许用户创建新的文本输入或删除最新的文本输入。

我知道DOM操作不是Angular的方法,但由于需求,我必须做一些需要动态创建元素的东西。 Angular中是否有最佳实践,服务或指令可以允许我这样做,或者我应该使用jQuery注入元素?

2 个答案:

答案 0 :(得分:3)

您唯一需要的是正确使用ng-repeat。不需要使用jQuery进行DOM操作。这也不是好的做法。看,ng-repeat的力量。

工作人员here

答案 1 :(得分:3)

这样的东西?

<div ng-repeat="idea in ideas">
    <input ng-model="idea">
</div>
<button ng-click="AddNew()">Add New Idea</button>
<button ng-click="DeleteLast()">Delete Last Idea</button>

在控制器中:

$scope.AddNew = function() {
    $scope.ideas.push("");
}

$scope.DeleteLast= function() {
    $scope.ideas.splice($scope.ideas.length-1, 1);
}