我有一个表,其默认宽度是一个特定的值,比如父div的80%。该表最初是隐藏使用 'NG-如果' 直到某个AJAX通话结束如下:Angularjs/jQuery:在ajax调用完成后更改表格的宽度。
HTML:
<div ng-if="!loading">
<table id="table-stable">
<thead>
//columns
</thead>
<tbody>
<tr ng-repeat="data in tableData">
//rows
</tr>
</tbody>
</table>
</div>
AngularJS控制器:
$scope.loading = true;
someFactory.getData().then(function(data) {
$scope.loading = false;
$scope.tableData = data;
//now need to write code to change table's width dependant on data.
})
正如在控制器中所解释的,根据从工厂提取的数据,我需要更改表格的宽度。
问题在于表中的2列根据取数据中的值没有显示,所以如果这些列没有显示,那么我需要缩小表的宽度。
目前,在ajax调用完成后编写jQuery不起作用。上面指定的控制器的代码:
$scope.loading = true;
someFactory.getData().then(function(data) {
$scope.loading = false;
$scope.tableData = data;
$('#table-stable').attr('width', '100px'); //not working.
})
我的猜测是该表尚未完全呈现?那么,我在这里黑暗中拍摄。我如何处理这个问题?
我认为这是最好的方法。谢谢。 –