2
私はオブジェクトの2次元配列をjsonとして返すコントローラを持っています。それはから来ているクラスに基づいて、きれい色の細胞との素敵な2次元のHTMLテーブルを(生成Knockout.js、マップされた2次元配列の値を変更するにはどうすればよいですか?
<table>
<tbody data-bind="foreach: board">
<tr data-bind="foreach: $data">
<td data-bind="attr: { class: Color }"></td>
</tr>
</tbody>
</table>
:
は、私はまた、次のHTMLを持っている:私は私のJavaScriptから電話をかけますカラープロパティ)。どうやってこの色を別の色に変えることができますか?
そして、別の質問には、どのように私はバインディングに複数のクラスを追加することができます...board[1][1]({Color: 'red'});
が、私はそのボード[1]が存在しないというエラーが出ます:
は、私が試しましたか?
...
<td data-bind="attr: { class: Color + ' some-other-class' }"></td>
...
をしかし、私は得る:私が試した
class="function b() { if (0 < arguments.length) { if (!b.equalityComparer || !b.equalityComparer(d, arguments[0])) { b.H(), d = arguments[0], b.G(); } return this; } r.T.Ha(b); return d; } some-other-class"
それはバグですか、私は何か間違ったことをやっていますか?
ありがとう、それは私を助けました。私はノックアウトに新しく、まだそれらのばかげた間違いをしています...なぜ
バインディングはすべて、オブザーバブルを渡してアンラップしようとしているかどうかをチェックします。しかし、式( 'Color()+ 'some-other-class')を使うと、バインディングに入る前に評価されます。 –