Yii 1 + bootstrap模态弹出问题

时间:2017-08-24 08:45:17

标签: php yii bootstrap-modal

当我们使用bootstrap模式弹出窗口(远程内容)加载cgridview然后在重新打开弹出窗口后如果我们点击分页链接那么有多个请求发生了如何防止它?

我已尝试在cgridview中使用动态ID等等,但似乎问题尚未解决。请帮忙。

1 个答案:

答案 0 :(得分: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
        }

并在cgridview小部件的视图文件中使用$this->gridId