这可能吗?我希望能够根据用户输入整齐地换出一个表体,所以我只是把这个小*测试放在一起看看它是否会起作用,但是它加载所有的不稳定,主体在表格本身之前和之外DOM即使我在我的HTML中适当地嵌套它。所以我的问题是这样的: 1)这种行为到底是什么?和 2)我可以实现我想要的方式吗?
HTML:
<div ng-app="myApp" ng-controller="myController">
<table class="table">
<thead>
<tr>
<th>Month</th>
<th>Savings</th>
</tr>
</thead>
<my-directive></my-directive><!-- this should be the tbody -->
<tfoot>
<tr>
<td>Sum</td>
<td>$180</td>
</tr>
</tfoot>
</table>
</div>
JS:
var app = angular.module("myApp", []);
app.directive("myDirective", function () {
return {
restrict: 'E',
template: '<tbody><tr><td>January</td><td>$100</td></tr><tr><td>February</td><td>$80</td></tr></tbody>',
};
});
答案 0 :(得分:3)
您当前正在<my-directive></my-directive>
元素中渲染标记,这会弄乱表格布局。
相反,将您的指令更改为基于属性的指令并将其放在<tbody>
元素上,替换内容..
模板
</thead>
<tbody my-directive></tbody><!-- this should be the tbody -->
<tfoot>
指令
return {
restrict: 'A',
template: '<tr><td>January</td><td>$100</td></tr><tr><td>February</td><td>$80</td></tr>'
};
见工作fiddle。