【发布时间】:2013-01-06 20:43:02
【问题描述】:
我为 AngularJS 编写了一个 dataTables 指令。它工作正常,除了我尝试向行添加一个按钮,通过 ng-click 删除一行。
在我看来,问题的出现是因为表格行现在不在范围内。
谁能帮我解决这个问题。
jsFiddle 示例:http://jsfiddle.net/A5Zvh/7/
我的指令看起来像这样。
angular.module('DataTables', [])
.directive('datatable', function() {
return {
restrict: 'E',
transclude: true,
replace: true,
require: 'ngModel',
template: '<table></table>',
link: function(scope, element, attrs, model) {
var dataTable = null,
options;
var buttons = jQuery.parseJSON(attrs['buttons']) || null;
options = {
"bJQueryUI": false,
"sDom": "<'row-fluid'<'span4'l><'span8 filter' <'pull-right'T> <'pull-right'f>>r>t<'row-fluid'<'span6'i><'span6'p>>",
"sPaginationType": "bootstrap",
"oTableTools": {
}
};
if(_.has(attrs, 'datatableOptions')) {
jQuery.extend(true, options, scope.$eval(attrs['datatableOptions']));
}
scope.$watch(attrs.ngModel, function(data) {
if(data && _.size(data.aaData) > 0 && _.size(data.aoColumns) > 0) {
_.extend(options, scope.$eval(attrs.ngModel))
dataTable = $(element).dataTable(options);
dataTable.fnClearTable();
dataTable.fnAddData(data.aaData);
}
});
}
}
})
【问题讨论】:
-
没有人知道如何解决这个问题?
-
你看过这篇文章吗?也许,你可以找到一些有用的东西。 stackoverflow.com/questions/14242455/…
标签: javascript jquery angularjs datatables