我正在使用jqgrid版本4.4.4,並且我有一個現有的已填充jqgrid表,我想在用戶在外部下拉菜單中選擇特定值時禁用行。
image
在現有jqgrid中禁用行選擇
例如,作爲圖像顯示,如果用戶選擇相應的值1我想具有不同ID的所有行(0和2)包含在表變成不可選擇。以相同的方式選擇0值時,第1行和第2行將被取消選中,依此類推。
我想這樣做,而不使用gridUnload方法。
現在我已經找到了禁用輸入按鈕的方法,但是用戶無論如何都可以推動行並選擇值。
任何想法?
預先感謝您
我正在使用jqgrid版本4.4.4,並且我有一個現有的已填充jqgrid表,我想在用戶在外部下拉菜單中選擇特定值時禁用行。
image
在現有jqgrid中禁用行選擇
例如,作爲圖像顯示,如果用戶選擇相應的值1我想具有不同ID的所有行(0和2)包含在表變成不可選擇。以相同的方式選擇0值時,第1行和第2行將被取消選中,依此類推。
我想這樣做,而不使用gridUnload方法。
現在我已經找到了禁用輸入按鈕的方法,但是用戶無論如何都可以推動行並選擇值。
任何想法?
預先感謝您
的jqGrid允許您定義beforeSelectRow
回調,這將被稱爲新行會被選中之前。回調獲取當前選中行的rowid
作爲參數。回調可以首先在外部下拉菜單中獲取所選項目的值,然後根據選定的值返回true
或false
,並根據選擇的行返回rowid
。通過這種方式你可以實現你的需求。
此外,您可以使用getGridParam
方法使用參數"selarrrow"
獲取具有所有當前選定行的rowid列表的數組。用戶更改外部下拉列表中的選擇後,可以更改jqGrid上的當前選擇。您可以使用setSelection
方法切換特定行的選擇。
您可以額外實現onSelectAll
回調,如果用戶單擊多選列的列標題來選擇或取消選擇所有行,將會調用該回調。您可以切換某些行的選擇來保存您要遵循的規則。
我建議你考慮使用jgGrid的height: "auto"
選項來改善網格的外觀。此外,我建議您從復古版本4.4.4升級到free jqGrid 4.13.4。您可以直接使用從CDN(請參閱the wiki)或從NuGet,npm,bower或從Maven Central下載。 4.4.4版本已經死了,並沒有更多的支持。
你必須更準確地描述你的問題。你目前寫的是「改變一些屬性」。你在「屬性」下的含義是什麼?你的意思是jqGrid的選項?一些選項可以動態更改,另一個不可更改。因此,您應該明確指出您需要實施的內容。另一個例子:你寫關於「下拉菜單」。你的意思是一些*外部菜單* jqGrid之外,或者你的意思是從過濾器工具欄或編輯字段(在使用內聯編輯,單元格編輯或表單編輯的情況下)或jqGrid的搜索對話框的字段下拉? – Oleg
包含您使用的JavaScript代碼或某些圖片將會很有幫助。 – Oleg
感謝您的回答。我重寫了帖子... – Cyr