有没有办法在每次点击时执行onTdClick(为其提供元素)的方式使用angular.element(...).on('click', onTdClick);
(例如)?
假设我有2个表,都有单元格和列
我希望能够点击CELLS并发送我点击的元素并将其发送到onTdClick($event)
。
$scope.onTdClick = function(ev){
window.getSelection().selectAllChildren(ev.target);
};
基本上与:ng-click="onTdClick($event)"
完全相同,而无需点击数百<td>
个
我用.insertRow和.insertCell
动态添加表格行和表格单元格
https://www.w3schools.com/jsref/met_table_insertrow.asp
所以静态地做angular.element().find('td').on()
在这里不会很好。
我正在尝试这样做,所以我可以点击<td>
来基本上突出显示单元格。
高亮代码已经过测试并且有效:
window.getSelection().selectAllChildren(ev.target);
(其中ev是td元素)
答案 0 :(得分:0)
你不应该在AngularJS中使用insertRow。相反,您应该对每个行都有一个对象的数组使用ng-repeat,并且只想在要插入行时按下对象。
$scope.insertRow = function(){
$scope.tdList.push({});//push whatever you want
}
如果你想要变量的单元格数量,你可以在这个对象中存储一些参数来告诉视图该行有多少个单元格,并在里面放置一个嵌套的ng-repeat来创建单元格