$ elem.hide不是angular-datatable中的函数

时间:2015-10-23 10:30:19

标签: angularjs npm bower angular-datatables

我想使用分页插件angular-datatable。我用bower安装它但它不起作用。它给出了以下错误

  

TypeError:$ elem.hide不是函数           在Object.showLoading(http://localhost:8000/vendor/angular-datatables.js:698:15)           在postLink(http://localhost:8000/vendor/angular-datatables.js:47:31)           在http://localhost:8000/vendor/angular.js:8783:44           at invokeLinkFn(http://localhost:8000/vendor/angular.js:8789:9)           at nodeLinkFn(http://localhost:8000/vendor/angular.js:8289:11)           在compositeLinkFn(http://localhost:8000/vendor/angular.js:7680:13)           在compositeLinkFn(http://localhost:8000/vendor/angular.js:7684:13)           在compositeLinkFn(http://localhost:8000/vendor/angular.js:7684:13)           在compositeLinkFn(http://localhost:8000/vendor/angular.js:7684:13)           在compositeLinkFn(http://localhost:8000/vendor/angular.js:7684:13

我使用Zero配置, 这是我用过的HTML代码

<table datatable="" class="row-border hover">
    <thead>
        <tr>
            <th>ID</th>
            <th>First name</th>
            <th>Last name</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>1</td>
            <td>Foo</td>
            <td>Bar</td>
        </tr>
        <tr>
            <td>123</td>
            <td>Someone</td>
            <td>Youknow</td>
        </tr>
        <tr>
            <td>987</td>
            <td>Iamout</td>
            <td>Ofinspiration</td>
        </tr>
    </tbody>
</table>

2 个答案:

答案 0 :(得分:24)

我认为您错误地添加了javascript个文件。

您需要按此顺序添加

  1. JQUERY
  2. ANGULAR
  3. JQUERY DATA-TABLE
  4. ANGULAR DATA-TABLE
  5. 并且不要忘记将datatables模块添加到主模块中,

    EX:angular.module('plunker', ['datatables']);

    DEMO

    简单 - 如果您在jquery.js之后添加angular.js,请剪切jquery.js并将其放在angular.js的顶部。

    如果您使用bower,请更新bower.json以满足上述更改。

答案 1 :(得分:1)

另外,请确保没有将ng-jq指令设置为空。相反,您希望将其设置为$jQuery,即

<html id="ng-app" ng-jq="$">

<html id="ng-app" ng-jq="jQuery">