jqgrid ツールバーの検索ボタンを押すと、高度な検索ウィンドウが開きます。エンターキーを押しても検索が始まらない。検索を開始するには、検索ボタンをクリックする必要があります。
検索ボタンをクリックするのと同じように、Enterキーを押して検索を開始できるようにする方法は?
jqgrid ツールバーの検索ボタンを押すと、高度な検索ウィンドウが開きます。エンターキーを押しても検索が始まらない。検索を開始するには、検索ボタンをクリックする必要があります。
検索ボタンをクリックするのと同じように、Enterキーを押して検索を開始できるようにする方法は?
キーで検索を実装するには、任意の入力フィールドへのイベントへのEnterバインディングを実装し、 で検索を強制する必要があります。jQuery UI を含める場合 は、コードを読みやすくするために 13 の代わりに使用できます。keydown
Enterjquery-ui.min.js
$.ui.keyCode.ENTER
コードは次のようになります
$.extend($.jgrid.search, {
// ... some other default which you use
afterRedraw: function (p) {
var $form = $(this), formId = this.id, // fbox_list
bindKeydown = function () {
$form.find("td.data>.input-elm").keydown(function (e) {
if (e.which === $.ui.keyCode.ENTER) {
$(e.target).change();
$("#" + $.jgrid.jqID(formId) + "_search").click();
}
});
},
oldOnChange = p.onChange,
myOnChange = function (param) {
var $input = $form.find("td.data>.input-elm"), events;
oldOnChange.call(this, param);
if ($input.length > 0) {
events = $._data($input[0], "events");
if (events && !events.keydown) {
bindKeydown();
}
}
};
p.onChange = myOnChange;
bindKeydown.call(this);
}
});
デモは、コードをライブで示します。