knockout.js クリックされた行のテンプレートを変える
2012/08/06
方法はいくつかある。
「各行に対して、専用のフラグみたいなヤツを持たせる」もしくは「選択された行が何行かを別途持たせる」
めも
専用のフラグを持たせる方が考え方がラク。
各行に対して、専用のフラグみたいなヤツを持たせる
考え方は、「専用のフラグが立ってる場合、何かする」。
流れは、クリックされたらその行の専用のフラグを立てる。
そのフラグで条件分岐。
気が済むまで処理をしたら立てたフラグを倒しておく。
選択された行が何行かを別途持たせる
考え方は、「選択された行と別途持たせた行を比較」。
流れは、選択された行番号を取得して適当な変数か何かに保存。
変数の値と行($index)で条件分岐。
気が済むまで処理をしたら変数の値をクリアしておく。
「-1」にしておくってのもあり。(「0」にするのはダメ。「$index」が「0」から始まるため)
まとめ:
Koでクリックされた行に対して何かする
サンプル:
クリックされた行に対して何かする