0

我在使用 angularjs 时遇到问题。一切似乎都按预期工作;但是,footable3 正在删除<a/>表格单元格中的任何链接。下面的代码,但是如果我删除属性“my-footable”,则会出现链接(检查表格,有<a/>链接),但我无法弄清楚为什么在使用指令时它们被删除(检查表格,没有<a/>链接)

我使用angularjs/footable作为起点

这是我的指令

app.directive('myFootable', function () {
  return function (scope, element) {

    var footableTable = element.parents('table');

    if (!scope.$last) {
      return false;
    }

    scope.$evalAsync(function () {

      if (!footableTable.hasClass('footable-loaded')) {
        footableTable.footable();
      }

      footableTable.data('__FooTable__').draw();

    });
  };
}

这是我的桌子

 <table class="table footable">
          <thead>
            <tr>
              <th>Team</th>
              <th>Player</th>
              <th data-breakpoints="xs sm" data-type="number">Games</th>
              <th data-sorted="true" data-direction="DESC" data-type="number">Points</th>
            </tr>
          </thead>
          <tbody>
            <tr ng-repeat="item in players" my-footable>
              <td>{{item.teamName}}</td>
              <td><a href="/#/players/{{item.playerId}}">{{item.playerName}}</a></td>
              <td class="text-right">{{item.games}}</td>
              <td class="text-right">{{item.points}}</td>
            </tr>
          </tbody>
        </table>
4

1 回答 1

1

通过将指令更改为:

 function () {
  return function ($compile, scope, element) {

    if (!scope.$last) {
      return false;
    }

    var footableTable = element.parents('table');

    scope.$evalAsync(function () {

      if (!footableTable.hasClass('footable-loaded')) {
        footableTable.footable();
      }

      footableTable.data('__FooTable__').draw();

      $compile(element.contents())(scope);
    });
  };
}
于 2015-12-25T19:16:29.160 回答