我使用jqGrid javascript插件。 我使用數據類型:json,並且一切正常,旁邊的事實我不想讓jqGrid給我的行ID。jqGrid插件 - 沒有自動行ID?
我不想設置ID,如果我不設置它們,jqGrid會自動爲行提供ID:1,2,3 ...(自動遞增數字)。這是一個問題,因爲我創建了幾個網格,然後多次使用相同的ID。 雖然到目前爲止我還沒有遇到任何問題,但我不希望我的文檔無效。有什麼辦法可以禁用jqGrid自動行ID嗎?
我使用jqGrid javascript插件。 我使用數據類型:json,並且一切正常,旁邊的事實我不想讓jqGrid給我的行ID。jqGrid插件 - 沒有自動行ID?
我不想設置ID,如果我不設置它們,jqGrid會自動爲行提供ID:1,2,3 ...(自動遞增數字)。這是一個問題,因爲我創建了幾個網格,然後多次使用相同的ID。 雖然到目前爲止我還沒有遇到任何問題,但我不希望我的文檔無效。有什麼辦法可以禁用jqGrid自動行ID嗎?
電網的每行數據必須有id
attribure。它將用於jqGrid的許多回調。所以我建議你分配一些價值。如果您從服務器獲取數據,則數據通常將從數據庫的某個具有唯一標識的表中獲取。在這種情況下,我建議您使用該值作爲id。它將簡化您將來決定實施該功能的數據編輯的實施。
要在客戶端分配值獨特 ID我可以建議你兩種方法:1)的idPrefix
2)的beforeProcessing
使用的使用分配唯一id
屬性,每一個項目從服務器返回客戶端上 。
第一種方法非常簡單。如果在輸入數據中未找到id,rowid將根據網格的idPrefix
選項的值和輸入數據的id值或由jqGrid生成的1,2,3,...值構建。例如,第一個網格可以使用idPrefix: "a"
,第二個網格可以使用idPrefix: "b"
。在這種情況下,第一格的IDS會"a1"
,"a2"
,"a3"
,......和第二網格的IDS會"b1"
,"b2"
,"b3"
,...
在使用的情況下,第二種方法則需要執行beforeProcessing
回調,在jqGrid獲得響應後,但在jqGrid處理數據之前,將由jqGrid調用該回調。所以你將能夠預處理的數據。例如,您可以對數據項進行循環,並將id
屬性分配給例如$.jgrid.randId()
的每個項目。方法$.jgrid.randId()
將生成唯一的id值。所以你會沒有id更多的重複。
謝謝。儘管我可以在服務器上輕鬆地提供id,因爲我在數據上執行了服務器端循環。但我最好不要這樣做。我將使用idPrefix選項。 – user3599803 2014-10-04 18:08:45
@ user3599803:不客氣! – Oleg 2014-10-04 18:13:55
@ user3599803:小評論**不是關於我的答案**。你在5個月內只用了2次投票。投票是主要可能**,以幫助其他人**找到**真正有用的**信息在stackoverflow。投票是排序的主要標準。您每天最多可以投票30個答案或問題**(請參閱[此處](http://meta.stackexchange.com/a/5213/147495))。所以如果你有什麼幫助其他用戶請投票所有有用的答案和問題,你在stackoverflow找到。 – Oleg 2014-10-05 11:11:05