Câu hỏi của tôi tương tự như this one, nhưng thay vì hàng trước, tôi muốn nó nối thêm.AngularJS - nối thêm hàng sau phần tử theo chỉ thị
này không hoạt động:
app.directive('createTable', function ($compile) {
return {
link: function (scope, element, attrs) {
var contentTr = angular.element('<tr><td>test</td></tr>');
contentTr.parentNode.insertBefore(element, contentTr.nextSibling);
$compile(contentTr)(scope);
}
}
});
jqLite không có insertAfter vì vậy nếu bạn không sử dụng jQuery, bạn phải sử dụng. Sau đó thay thế. – Andrew
Câu hỏi: tại sao bạn cần trao đổi các yếu tố? Tôi không rõ lý do tại sao nó không "chỉ làm việc" nếu bạn gắn thêm các phần tử được chèn vào phần tử hiện tại. – Claudiu
Trao đổi là cần thiết vì mỗi hàng lặp lại hiển thị ở vị trí ban đầu (trước khi bất kỳ hàng nào chúng tôi đã thêm vào). Vì vậy, trao đổi chỉ kiểm tra nếu có một hàng nối sau và di chuyển nó trước hàng hiện tại. – noj