gpt4 book ai didi

angularjs - 在 angular.js 中点击按钮可以在表格中添加行吗?

转载 作者:行者123 更新时间:2023-12-04 16:24:28 27 4
gpt4 key购买 nike

关闭。这个问题需要details or clarity .它目前不接受答案。












想改善这个问题吗?通过 editing this post 添加详细信息并澄清问题.

7年前关闭。




Improve this question




在 angular.js 中点击按钮可以在表格中添加行吗?
我对 angular 完全陌生,所以也许是一个学习问题。
我知道使用 jquery 执行此操作并附加 html 文本,但是当我有行的 html(如部分)时,如果有更优雅的方式以 angular 执行此操作。

最佳答案

在 angularjs 中,您想让模型驱动 View ,任何 DOM 操作都应该在指令中进行(您自己的自定义指令或包含在 angular 库中的指令)。

幸运的是,angular 附带了一些非常有用的指令可供使用。 ng-repeat 非常适合向 View 中的表添加新行的任务。

考虑这个 Example

HTML

<body ng-controller="ExampleCtrl">
<h1>Person List</h1>

<fieldset>
<legend>Create Person</legend>
<input type="text" ng-model="name" placeholder="Name" ><br />
<input type="number" ng-model="age" placeholder="Age" ><br />
<input type="text" ng-model="title" placeholder="Title" ><br />
<button type="button" ng-click="addPerson()">Add Person</button>
</fieldset>

<table border="1" cellpadding="10">
<thead>
<tr>
<th>
Name
</th>
<th>
Age
</th>
<th>
Title
</th>
<th>

</th>
</tr>
</thead>
<body>
<tr ng-repeat="person in people">
<td>
{{ person.name }}
</td>
<td>
{{ person.age }}
</td>
<td>
{{ person.title }}
</td>
<td>
<button type="button" ng-click="removePerson($index)">Remove Person</button>
</td>
</tr>
</body>
</table>

</body>

Controller
function ExampleCtrl($scope){
$scope.people = [
{name:'Jon', age: 30, title: 'Developer'},
{name:'Mike', age: 37, title: 'Manager'},
{name:'Allen', age: 50, title: 'CEO'}
];

$scope.addPerson = function(){
var person = {
name: $scope.name,
age: $scope.age,
title: $scope.title,
};

$scope.people.push(person);
};

$scope.removePerson = function(index){
$scope.people.splice(index, 1);
};
}

注意行 ng-repeat="person in people" Angular 将呈现 <tr>对于在 $scope 上定义的 people 数组中的每个项目我们的 Controller 。

如果我们在 people 数组中添加另一个人,angular 会自动渲染一个新的 <tr>在下一个摘要周期期间的 View 中。

如果我们从数组中删除一个人,也会发生同样的情况。 DOM 元素的所有工作都在 ng-repeat 中隔离。指示。

关于angularjs - 在 angular.js 中点击按钮可以在表格中添加行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21295117/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com