2015.10.28
jqGrid
最新jqGrid 行クリックの挙動
以前まではバージョン4.6.0を使っていて今回新しいプロジェクトから
現時点(2015/10)で最新のバージョン4.9.0-rcへ変更しました。
変更後に気づいたのは行クリックでハイライト(選択状態)になり、
再度クリックするとが消えました。(未選択状態)
以前までのバージョンではそのような挙動ではなかったと思います。
再度同じ行をクリック。
![]()
“multiselect: false”にしてますが、
このように選択を切り替えるトグルになってます。
これを回避する方法です。
var selrow; // グローバル変数
jQuery("#list").jqGrid({
. . .
beforeSelectRow: function(rowid, e) {
if (selrow === rowid) {
return false;
} else {
return true;
}
},
onSelectRow: function(id) {
if (id && id !== selrow) {
selrow = id;
}
},
onSelectRowで選択中のidをselrowに保持し、
beforeSelectRowでselrowと新しくクリックされたidを比較し、
一致の場合はfalse、不一致の場合trueを返します。
因みに、beforeSelectRowで常にfalseを返すとハイライトされません。
