私の要件は、インライン編集機能を備えたjqgridの行をクリックした場合です。編集モードでは、既存のセルコンテンツを表示したくありません。代わりに、セルの内容を空白にして、ユーザーが何かを入力して保存できるようにする必要があります。
選択したIDを使用してセルの内容にアクセスできますが、それをクリアして編集モードに設定するにはどうすればよいですか。
私の要件は、インライン編集機能を備えたjqgridの行をクリックした場合です。編集モードでは、既存のセルコンテンツを表示したくありません。代わりに、セルの内容を空白にして、ユーザーが何かを入力して保存できるようにする必要があります。
選択したIDを使用してセルの内容にアクセスできますが、それをクリアして編集モードに設定するにはどうすればよいですか。
なぜこのような奇妙な動作を実装する必要があるのか 、私にはわかりません。おそらく、例ですべてをクリアできます。それでも、要件を実装するのは難しくありません。
editRowoneditfunc
のパラメーターを使用して、編集の開始時にいくつかのアクションを実行できます。テキスト入力フィールドが可能なだけではないため、さまざまなコントロールに対してさまざまなアクションを実行する必要があります。たとえば、テキスト入力とチェックボックスの場合、コードは次のようになります。
grid.jqGrid('editRow', rowid, true, function () {
var $tr = $(e.target).closest('tr')[0],
$selectedCell = $("input, select", e.target);
$("input:text", $tr).val('');
$("input:checkbox", $tr).prop("checked", false);
}
(ここでvar grid = $("#list");
)。他のコントロールの場合、追加のアクションを実装する必要があります。
ここでデモを参照してください。
beforeShowForm: function(form) {
$("#Row id 1", form).val('');
$("#Row id 2", form).val('');
}