[英]Yii 1 + bootstrap modal popup issue
当我们使用引导程序模式弹出窗口(远程内容)加载cgridview时,重新打开弹出窗口后,如果我们单击分页链接,则会发生多个请求,如何防止它发生?
我已经尝试在cgridview中使用动态ID等等,但似乎问题仍未解决。 请帮忙。
幸运的是,经过越来越多的研究,我找到了解决方案。 基本上,问题是我在主页上有一个网格,并且从该页面开始,有一个按钮可以打开另一个网格的弹出窗口,在弹出窗口中,当我们重新打开弹出窗口并单击分页时,它请求的次数是打开弹出窗口的次数。 例如,如果打开了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
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.