我有一个CI页面,它将使用jQuery加载到视图文件中的div。使用开关(page_parameter),我控制从页面显示的内容。
当我第三次调用页面时,我为类数组设置了一个值。 但是当我第四次打电话时,阵列变空了。
我想知道,实际上是否可以使用class属性来存储可在页面重新访问后使用的值?还是我头脑中缺少的东西? 我知道使用session不是一个好主意,因为真正的数组是序列化xml的一大块。
这是我的代码:
class MyClass extends MY_Controller
{
public static $pitems = array();
function Hotel(){
parent::MY_Controller();
}
function new_campaign(){
$params = $this->uri->uri_to_assoc();
switch($params['step']){
case '3' : self::$pitems = array("test","another"); //here the class array was set successfully
$this->load->view('viewer');
break;
case '4' : print_r(self::$pitems); //here the array is empty
break;
}
}
在查看器页面中,有一个对该页面的调用:
<a href="myclass/new_campaign/step/4">Next page</a>
同样的问题还有$ this-&gt; 我在这里失踪了什么? 提前谢谢〜
编辑: 我看到了一个类似场景的脚本。它成功地重用了构造函数中的变量集,而不是将其视为类变量。我会仔细确认这一点,但是现在,我将关闭这个帖子。谢谢Chris分享。
答案 0 :(得分:0)
我不确定你想要做什么,但我在CI中有很多次用户jQuery post()/ get()/ ajax()并没有遇到任何问题。尽管不知道或不了解你想做什么。我以为我至少会说我知道在没有刷新CI的情况下通过像jQuery这样的东西加载数据不是问题。我在CI上建立的系统示例有一个类似Twitter的推文,其中定时器上的jQuery正在轮询新数据,并且如果要显示新内容,每次都会相应地回来。