2017-08-24 97 views
0

當我們使用引導模式彈出(遠程內容)加載cgridview,然後重新打開彈出後,如果我們點擊分頁鏈接然後有多個請求發生如何防止它?Yii 1 +引導模式彈出問題

我已經嘗試在cgridview中使用動態ID和更多,但似乎沒有解決問題。請幫忙。

回答

1

幸運的是,挖掘越來越多,我得到了解決方案。基本上,問題是我在主頁面上有一個網格,在那個頁面上有按鈕打開另一個網格的彈出窗口,當彈出窗口時,我們重新打開彈出窗口並單擊分頁,然後請求多次打開彈出窗口。對於例如如果彈出窗口被打開5次,那麼有5個請求被創建,4個被瀏覽器中止。要停止它,我申請下面的解決方案。

您只需要爲該彈出網格創建動態網格ID並將相同的ID傳遞給ajax請求以保持網格ID和cgridview完美工作。

在你的控制器把

if(!isset($_REQUEST['ajax'])) { 
      $this->gridId = 'timesheet-report-grids'.rand(1,15000); 
     } else if(isset($_REQUEST['ajax']) && $_REQUEST['ajax'] != '') { 
      $this->gridId = $_REQUEST['ajax']; 
     } else { 
      $this->gridId = 'timesheet-report-grids'; // Just to prevent error in any case 
     } 

,並使用$this->gridId在視圖文件中cgridview部件。