0
3番目から列を繰り返す必要があります。 tr
の中に別のタブを置くことができないので、この例ではhybrid
という要素をここで使用できますか?空の要素を実装して、角でtdを繰り返す
<table>
<tr>
<th colspan='2'>Category</th>
<th ng-repeat='p in ps' colspan='3'>{{p.id}}</th></tr>
<tr ng-repeat='c in cats'>
<td>{{c.code}}</td>
<td>{{c.label}}</td>
<hybrid ng-repeat='p in ps'>
<td>{{p.quantity}}</td>
<td>{{p.cost}}</td>
<td>{{p.quantity*p.cost}}</td>
</hybrid>
</tr>
</table>
は私が失敗した私が何をしないのです
app.directive("hybrid",function($compile) {
return {
restrict: 'E',
link: function(scope, element, attrs) {
element[0].outerHTML = element[0].outerHTML;
$compile(element.contents())(scope);
}
}
});
を、次のようなものを試してみましたか?
申し訳ありませんが、「td」のみでなければなりませんでした。私は内側のスパンを置き換えるためのreplace-me命令を作成し、そのHTMLで置き換えるよりもng-repeatをtdに追加しました。私の答えを参照してください – Bellash
@Bellash:私はあなたの正確な要件はわかりませんが、このような複雑な指令を作成する必要はないと思います。特に大きなテーブルのデータでページのレンダリングが遅くなる可能性があります。ここで私はあなたの[フィドルリンク](http://jsfiddle.net/e28mhhxd/)をフォークし、*を別のデータに置きます。それは簡単な '
私はついにこの問題を解決しました。私はそのHTMLSで置き換えるよりも、私は
td
にng-repeat
を追加span
Sを交換するreplace-me
ディレクティブを作成し、はthis fiddle
または
を参照してください。出典
2017-05-05 14:41:05 Bellash
関連する問題