如何在 CodeIgniter 中完全刷新页面?
Posted
技术标签:
【中文标题】如何在 CodeIgniter 中完全刷新页面?【英文标题】:How do I fully refresh the page in CodeIgniter? 【发布时间】:2012-10-03 12:31:28 【问题描述】:我正在叠加层中加载一个表单。叠加层对调用叠加层的页面有单独的控制器和操作。
在表单提交时,如果成功,我只想重新加载加载叠加层的引用页面。我可以加载引用页面,但它会将内容放在叠加层内。
header("Location: www.example.com", true, 302);
不工作。
像这样使用 URL 助手:
$url = $_SERVER['HTTP_REFERER'];
redirect($url);
也不起作用。每次它加载到叠加层中。我为此感到难过。
【问题讨论】:
你用什么做覆盖?如果您使用的是新窗口,那么您将无法尝试刷新主页。你应该使用花式盒子或灯箱之类的东西。 有点模糊。单独调用这个引用页面,覆盖有没有? 顺便说一句,避免使用HTTP_REFERER
。它在所有浏览器中都不一致,您的代码可能会中断。
叠加层是如何生成的?
【参考方案1】:
你可以使用这段代码在codeigniter中刷新:
redirect($_SERVER['REQUEST_URI'], 'refresh');
应该可以了!
【讨论】:
它可以工作,但如果我想通过刷新消息继续执行特定功能怎么办。这里很混乱。我的问题是 link 。 @jasmeen,菲利普 G 和 Deepti【参考方案2】:这个比较简单
重定向($this->uri->uri_string());
【讨论】:
如果uri中有参数怎么办?【参考方案3】:很遗憾,使用header
刷新/重定向只会反映显示 php 页面的容器中的更改。
要刷新父页面(即显示叠加层本身的页面),您需要在客户端使用 javascript 进行刷新。这些问题应该可以帮助您走上正确的道路:
Redirect parent window from an iframe action PHP "header (location)" inside IFRAME, to load in _top location?【讨论】:
【参考方案4】:你可以使用这段代码在codeigniter中刷新:
redirect($_SERVER['REQUEST_URI'], 'refresh');
希望这会有所帮助。
【讨论】:
您可以将 $_SERVER['REQUEST_URI'] 更改为您想要的任何网址。【参考方案5】:您不必为header
提供额外的两个参数。只需使用这种模式:
header('Location: www.somewhere.com');
另外,看看这篇关于类似问题的文章:
Redirect with CodeIgniter
【讨论】:
【参考方案6】:redirect(site_url(strtolower(__CLASS__)));
【讨论】:
【参考方案7】:只是
redirect('/some_url', 'refresh');
【讨论】:
更多详情请见:***.com/questions/723883/redirect-with-codeigniter【参考方案8】:这个对每个人来说都更简单:) location.reload()
【讨论】:
这是 jquery 不是 php 这是原生 javascript,不是 jquery以上是关于如何在 CodeIgniter 中完全刷新页面?的主要内容,如果未能解决你的问题,请参考以下文章
使用jQuery AJAX请求CodeIgniter从Controller显示数据库中的数据到View而不刷新页面