2014-10-27 46 views
1

在給定的網頁中,有兩個網格:一個從服務器獲取數據,另一個等待基於第一個網格的行點擊填充。這個想法是:用戶從一個網格中選擇記錄,並將選定的行添加到另一個表中。jqGrid:是否有網格完成並沒有行的事件?

我的目標是顯示一條消息,如果網格沒有記錄。問題是,只有當網格實際上有數據顯示時纔會觸發「gridComplete」和「loadComplete」事件。

是否有解決方法?我該如何處理這種情況?

此致敬禮。

回答

0

如果服務器返回空結果,則loadCompletegridComplete都將被稱爲事件。如果它沒有發生在你的網格中,那麼從服務器返回的結果可能是錯誤的。我建議您將loadError回調包含在網格中以驗證這一點。有關loadError的更多詳細信息,請參見the answer。在您解決問題後,我會建議您使用loadComplete來顯示您需要的信息。看看爲the answer創建的the demo。它演示瞭如何顯示此類消息的選項。

+0

感謝您的幫助。也許我還不夠清楚:空網格沒有收到任何服務器響應:它是故意的。我將'data:[]'傳遞給它,所以它可以在沒有任何記錄的情況下渲染。在這種情況下,這些事件永遠不會被解僱。我需要一些方法來確定表格是否爲空,並將JSON數據傳遞給jqGrid的數據選項。 – darksoulsong 2014-10-27 17:08:07

+0

@darksoulsong:不客氣!即使你使用'datatype:「local」,data:[]'(就像我在我的引用中的[舊演示](http://www.ok-soft-gmbh.com/jqGrid/EmptyMsgInBody.htm)回答)兩個回調'loadComplete'和'gridComplete'將被調用。你最好提供一個演示(例如在jsfiddle中)來演示你的問題。 – Oleg 2014-10-27 17:31:00

+0

我有同樣的問題,我有數據類型:'json'和服務器返回{},但jqGrid不會觸發以下任何:loadError,gridGomplete或loadComplete。即時通訊使用免費jqGrid 4.13.4(我想解決問題與水平滾動 - 當我使用內聯過濾器,沒有結果,滾動自動到左側) – bakus33 2016-11-14 13:06:28