大きなグリッド ビューを編集するための次のコード (読みやすいように簡略化されています) があります。ノックアウト スクリプトは、行ごとに非表示の編集行を生成します。[編集] ボタンをクリックすると行が再表示され、ユーザーが値を編集できるようになります。いくつかの html<select>
コントロールには多くの<option>
タグが含まれているため、生成される html は巨大です。
「編集」ボタンをクリックした後、編集行を動的に挿入することはできますか? または、ノックアウト/jQuery を使用してこの一般的なケースを処理するより良い方法はありますか?
<table>
<thead>.... </thead>
<tbody data-bind="foreach: Contacts">
<tr data-bind="visible: isEditing==false">
<td><span data-bind="text:Name"></span></td>
<td><span data-bind="text: Phone"></span></td>
<td><span data-bind="text: State"></span></td>
<td><a href="#" data-bind="click: startEdit">Edit</a></td>
</tr>
<tr data-bind="visible: isEditing">
<td>
First Name:<input data-bind="value: FirstName" />
Last Name:<input data-bind="value: LastName" />
</td>
<td><input data-bind="value: Phone" /></td>
<td><select data-bind="value: State">...huge options...</select></td>
<td><a href="#" data-bind="click: updateContact">Done</a></td>
</tr>
</tbody>