6

複数選択が有効になっているjqgridがあります。しかし、行をクリックしたときにチェックボックスをオンにしたくありません。

コード スニペットの使用

$("#yourGrid").jqGrid("setGridParam", {
    beforeSelectRow: function(rowId, e) {
       return $(e.target).is("input:checkbox");
    }
});

この投稿から、チェックボックスの選択を控えることができましたが、特定の行を強調表示できなくなりました。行のクリックで複数選択を無効にしたまま、行の強調表示を有効にするにはどうすればよいですか。

4

1 に答える 1

3

APIによると、グリッドにはこれを行うプロパティがあります。

multiboxonly

このオプションは、複数選択オプションが true に設定されている場合にのみ機能します。multiselect が true に設定されている場合、行の任意の場所をクリックするとその行が選択されます。multiboxonly も true に設定されている場合、複数選択はチェックボックスがクリックされた場合にのみ行われます (Yahoo スタイル)。他の行をクリックすると (チェックボックスがクリックされていないと仮定します)、すべての行の選択が解除され、現在の行が選択されます。

beforeSelectRowこれにより、関数は必要ありません。

jQuery("#grid").jqGrid({
     . . .
     multiselect: true,
     multiboxonly: true
     . . .
});
于 2012-07-17T13:08:07.300 に答える