我想使用 AngularJS 添加 jQuery 数据表。 $scope.SearchData = function () { var myData = new Object(); myData.EmployeeCode = $("#Person").val(); $http.post("/admin/GetData", myData) .then(function (response) { $scope.itemData = response.data.Initiator; $('#dtBasicExample').DataTable(); }); };我正在使用它搜索数据。这是在第二次单击按钮后工作。
1 回答
幕布斯6054654
TA贡献1876条经验 获得超7个赞
我认为这是观察者的问题,使用setTimeout并 申请修复它:
myApp.controller('myController', function($scope, $timeout){ // just example
$timeout(()=>{
$('#dtBasicExample').DataTable();
})
或者
setTimeout(()=>{
$('#dtBasicExample').DataTable();
$scope.$apply(); //this triggers a $digest
})
Angular 无法知道你可能会改变什么。在这种情况下,您有责任手动调用 $apply(),这会触发 $digest 循环。
同样,如果您有一个指令来设置 DOM 事件侦听器并更改处理程序函数内的某些模型,则需要调用 $apply() 以确保更改生效。
添加回答
举报
0/150
提交
取消