2012-02-01 163 views
0

用戶是否可以在jqGrid中單擊一行並觸發onSelectRow(這是正常行爲)。此外,如果用戶使用「Control + click」,則需要該功能,然後將該行標記爲選中狀態(用於打印& excel導出),但不會觸發onSelectRow。jqGrid選擇多行

+0

@Oleg你或許可以幫到我... – chugh97 2012-02-01 21:18:50

+0

如果你想發佈一條消息,你應該對我的任何*以前的答案*寫評論(見[這裏](http://meta.stackexchange .com/a/43020/147495)以獲得詳細信息)。在沒有回答或評論存在的頁面上使用「@Oleg」無法解析。如果你[搜索名字奧列格](http://stackoverflow.com/users?search=oleg),你會發現許多用戶與別名。 – Oleg 2012-02-13 11:15:51

回答

1

如果你只是想強調某些行創建一個屏幕截圖,爲示範的目的或打印時可以使用beforeSelectRow來實現你需要的行爲:

beforeSelectRow: function (rowid, e) { 
    var $tr; 
    if (e.ctrlKey) { 
     $tr = $(e.target).closest('tr.jqgrow'); 
     if ($tr.hasClass("ui-state-highlight")) { 
      $tr.removeClass("ui-state-highlight"); 
     } else { 
      $tr.addClass("ui-state-highlight"); 
     } 
     return false; 
    } 
    return true; 
} 

the demo

enter image description here

我應該提到,在演示中我另外使用了disableSelection由jQuery UI內部使用的方法來防止選擇網格中的文本。

+0

+1代碼可以通過刪除if($ tr.hasClass(「ui-state-highlight」))塊並用$ $ tr.toggleClass(「ui-state-highlight」)替換來簡化; – 2013-01-02 05:01:25