AngularJs Type error : Cannot read property 'childNodes' of undefined
阿新 • • 發佈:2018-11-10
一、在AngularJs和JQuery外掛共存咋專案中經常會遇到如下異常
Type error : Cannot read property 'childNodes' of undefined
解決方案1:
$timeout(init, 0);
引用$timeout服務,非同步執行JQuery的初始化程式碼
解決方案2:
angular.element(document).ready(function () { //Angular breaks if this is done earlier than document ready. setupSliderPlugin(); });
在angularjs初始化檢視之後執行JQuery 的繫結
二、在使用Bootstrap-table繫結工具欄是就會遇到如上問題
@*工具欄*@ <div id="toolBar"> <div class="btn-group"> <a class="btn green" ng-click="addBtnClick()"><i class="fa fa-plus">新建</i></a> <a class="btn red"><i class="fa fa-trash">刪除</i></a> </div> </div>
<table id="datatable" class="table table-striped table-hover table-bordered"
data-search="true"
data-show-refresh="true"
data-show-toggle="true"
data-show-columns="true"
data-toolbar="#toolBar">
</table>
控制器載入成功,繫結列表
//繫結列表 var table = null; $timeout(function() { table = $('#datatable').bootstrapTable({ columns: [ { field: 'checkbox', title: '主鍵', checkbox: true }, { field: 'Name', title: '角色名稱' }, { field: 'SortValue', title: '排序列' }, { field: 'IsSys', title: '角色分類', formatter(value, row, index) { if (value) return '內建角色'; return '自定義角色'; } }, { filed: 'RoleID', title: '操作', formatter(value, row, index) { var btn = ''; btn += '<span class="btn btn-xs blue" title="編輯"><i class="fa fa-edit"></i></span>'; btn += '<span class="btn btn-xs purple" title="許可權"><i class="fa fa-gears"></i></span>'; return btn; } } ], url: '/admin/menu/getlist_role', pagination: true sidePagination: 'server', queryParams: function(params) { return params; } }); }, 0);
更多: AngularJs ng-bind-html指令整理