0

コンテンツを ng-repeat のリンクとして解析するようにセルをフォーマットできることを知っています。

<a ng-href="{{::domainname}}/{{::row.sector}}/{{::row.cname}}/ipo-{{::row.tickerbb}}.html">{{::row.cname}}</a>

これがフィドルです。

row.tickerbb が null の場合に別の URL を表示するように動的にするにはどうすればよいですか? データをループして、コントローラーでそれを実行しようとしました:

var i = 0;
$.each(data, function () {
    if (data[i].tickerbb != null) {
        data[i].cname = '<a title="' + data[i].cname + '"' + ' ng-href="' + domainname + '/' + data[i].sector + '/' + data[i].shortcname + '/ipo-' + data[i].tickerbb + '.html">' + data[i].cname + '</a>';
    }
    else {
        data[i].cname = '<a title="' + data[i].cname + '" href="Holdings">' + data[i].cname + '</a>';
    }
    i += 1;
})

ただし、結果は生の html タグとして表示されます。

ここに画像の説明を入力

スマート テーブル セルの条件付き書式を設定するにはどうすればよいですか? または、スマートテーブルのセルをサニタイズする方法はありますか?

4

1 に答える 1

0

コントローラーでリンクを構築することで解決しました:

var i = 0;
$.each(data, function () {
     data[i].weight = (data[i].weight * 100).toFixed(2) + '%';
     if (data[i].shortcname != null) {
         var cname = data[i].cname;
         var sector = data[i].sector;
         var shortcname = data[i].shortcname;
         var tic = data[i].tickerbb;
         var url = '<a title="' + cname + '" href="' + $scope.domainname + '/' + sector + '/' + shortcname + '/ipo-' + tic + '.html">' + cname + '</a>';
                        data[i].cname = url;
      }
      else 
      {
          data[i].cname = '<a title="' + data[i].cname + '" href="Holdings">' + data[i].cname + '</a>';
      }
      i += 1;
 })

そして、ng-repeat 内でサニタイズします。

<td ng-bind-html="row.cname"></td>
于 2016-04-22T17:49:55.663 に答える