5
ノックアウトでforeachを使用して配列をバインドするときに、最初のレコードにCSSクラスを適用する方法を探しています。私の最終的な結果は、このように見える必要があります。ノックアウトでテンプレートforeachバインディングを使用する場合の配列の最初の値への適用
<tbody>
<tr>
<td class="special-class">A</a>
<td>A</a>
<td>A</a>
</tr>
</tbody>
私はafterRenderを行うと、最初の子を見つけて、自分がjQueryのを使用してaddClassをやっているを考え出すことができる唯一のオプション:その結果、テンプレートと
var viewModel = function() {
this.records = ["A", "B", "C"]
};
。より良い選択肢はありますか?
UPDATE:
<div id="calendar">
<table>
<thead>
<tr data-bind="template: {name: 'calendarHeadTemplate', foreach: days}"></tr>
</thead>
<tbody data-bind="template: {name: 'calendarTemplate', foreach: timeSlots}"></tbody>
</table>
</div>
<script id="calendarHeadTemplate" type="text/html">
<th data-bind="text: $data"></th>
</script>
<script id="calendarTemplate" type="text/html">
<tr data-bind="foreach: $data">
<td data-bind="text: $data"></td>
</tr>
</script>
そして、ここにある:私は私は私の実際のデータはので、ここでもう少し複雑であることに私の例ではミスを犯し実現
は私のテンプレートがどのように見えるかですデータがどのように見えるか:あなたtempalteで
var viewModel = function() {
this.days = ["Thu 15", "Fri 16"];
this.timeslots = [["1","2"],["3","4"]];
};
cssの第一子がテーブルから離れている最後の子を取得する方法をさまよい、それは最初の子だかどうかを確認するために$インデックス== 0を使用しましたか? – madcapnmckay
私は最初ににクラス( "特別クラス")を追加する必要があります
答えて
、試してみてください。
出典
2012-03-16 15:53:17
"未定義のプロパティ '0'を読み取ることができません;"というエラーが表示されます。テンプレートとビューモデルを使って私の投稿を更新しました。 –
私は私のtdの外観をbtwにした方法です。
ああ、それを理解しました。私の場合、それはレコードと呼ばれていませんでした。私は実際に私のものがどのように働くか変更したので、代わりに$ parentを使用しましたが、この答えは私に必要な情報を与えたものです –
私の場合、以前の解決策は機能しません。 は私が
出典
2014-12-05 13:36:14
関連する問題