在AngularJS中包含jQuery库

时间:2018-04-06 09:16:15

标签: javascript jquery angularjs

我需要在AngularJS Web应用程序中包含一个jQuery插件(TreeGrid,http://maxazan.github.io/jquery-treegrid/)。 我创建了一个新的自定义指令,如下所示:

var app = angular.module('treegrid', []);

app.directive('treegrid', [function() {

    return {
        restrict: 'A',
        link: function(scope, elem, attrs) {
            jQuery('.tree').treegrid(); 
        }

    };
}]);

我在root模块中包含了该指令,并在index.html中调用了jQuery库。

顺便说一下,将指令应用于table标签什么都不做;相反,如果我写函数

  

$(' .TREE&#39)。的TreeGrid();

在按钮标记的onclick属性中,它确实有效。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试此代码

<table treegrid>
<tr class="treegrid-1">
    <td>Root node</td><td>Additional info</td>
</tr>
<tr class="treegrid-2 treegrid-parent-1">
    <td>Node 1-1</td><td>Additional info</td>
</tr>
<tr class="treegrid-3 treegrid-parent-1">
    <td>Node 1-2</td><td>Additional info</td>
</tr>
<tr class="treegrid-4 treegrid-parent-3">
    <td>Node 1-2-1</td><td>Additional info</td>
</tr>

app.directive('treegrid', [function () {
    return {
        restrict: 'A'
        ,
        link: function (scope, elem, attrs) {
            console.log(elem);
            (elem).treegrid();
        }
    }
}]);