0
jqGridツールバーとインライン削除ボタンを使用して行を削除します。jqgridで削除後にグリッドにフォーカスを設定する方法
削除コマンドの削除ダイアログが表示されます。削除が確定またはキャンセルされた後、グリッドはフォーカスを取得しません。キーボードナビゲーションをグリッドで動作させるには、グリッド内でマウスをクリックする必要があります。
削除後にグリッドにフォーカスを設定する方法、または削除をキャンセルして追加のマウスクリックが不要な方法はありますか?ツールバーの
削除ボタン:カラム内の
$.extend($.jgrid.del, {
top: window.innerHeight/2-100,
left: window.innerWidth/2-120,
closeOnEscape: true,
errorTextFormat: function (response) {
clearModeless();
return decodeErrorMessage(response.responseText, '', '');
},
reloadAfterSubmit: false,
afterShowForm: function($form) {
var form = $form.parent()[0];
$("#dData",form).attr("tabindex","1000");
$("#eData",form).attr("tabindex","1001");
setTimeout(function() {
$("#dData",form).focus();
},50);
}
});
$grid.jqGrid("navGrid", "#grid_toppager", {
search: true,
del: true,
add: true,
view: true,
edit: true
},
{ url: '/erp/Grid/Edit?_entity=Klient'},
{ url: '/erp/Grid/Add?_entity=Klient' },
{ url: '/erp/Grid/Delete?_entity=Klient',
beforeShowForm: function(form) {
var selected = $grid.jqGrid('getGridParam','selarrrow');
$("td.delmsg",form).html('Rows '+selected.length +'<br/>' +
'Delete?');
}
}
);
[削除]ボタン:」
colModel: [{"name":"_actions","formatter":"actions","viewable":false,"formatoptions":{"editbutton":true,"keys":true,"onSuccess":function (jqXHR) { jqXHRFromOnSuccess=jqXHR;return true;}
,"afterSave":function (rowId) {
var data = $.parseJSON(jqXHRFromOnSuccess.responseText);
$grid.jqGrid('setRowData', rowId, { Kood: data.PrimaryKeyValues[0] });
cancelEditing($grid);afterGridSaveFunc(rowId,jqXHRFromOnSuccess);jqXHRFromOnSuccess=null;
updateButtonState($grid);
}
,"restoreAfterError":false,"onError":errorfunc
,"extraparam":{"_dokdata":FormData
},"afterRestore":function() {
updateButtonState($grid);
}
,"onEdit":onInlineEdit
,"delbutton":true,"delOptions":{"url":"Delete","afterComplete":function (response, postdata, formid) { summarefresh($grid); }
}}},
オプションを削除するには、afterComplete:function(){alert( 'afterComplete'); $ grid [0] .focus();} 'を追加しました。 Escキーまたはキャンセルボタンを押して質問を削除すると、メッセージボックスは表示されず、キーも機能しません。削除がキャンセルされた後、グリッドにフォーカスを戻す方法は? – Andrus
また、サーバがコントローラを削除してエラーを返し、キャンセルが押された場合、キーは機能しません。また、 '$ grid [0] .focus()'はグリッドのみにフォーカスを設定します。 'multiselect:true'が使われます。削除後に上/下矢印キーがテキスト/前の行に移動するように、最も近い削除行または最初の行にフォーカスを設定するにはどうすればよいですか? – Andrus