这是一个创建于 4144 天前的主题,其中的信息可能已经有所发展或是发生改变。
。。。有点难解释。。准确说是我先在一个页面用表格提交一个数据,在CodeIgniter的Controller里面的index方法里可以用$_POST['xx']读出来,也可以返还给新页面(load->view()),但是在新页面上,我用ajax调用了这个controller的另一个方法,该方法会返还这个之前提交的数据(是一堆字符串)。
然后我发现无论怎么试。。这个字符串总是为空。
class Search extends CI_Controller {
public $search_string;
public function index()
{
$this->search_string = $_POST['search'];
$data = array(....);
$this->load->view('template', $data);
}
public function init()
{
$query = $this->search_model->get_all_posts();
echo json_encode($query);
}
public function returnSearchString()
{
if (!is_null($this->search_string)) {
echo $this->search_string;
}
}
}
因为我在试用AngularJS。。这个框架的问题是,不能用document.getElementById()去读取隐藏文本框的值(所以我就不能把想要传递的值传到页面后再用JS来读。。)
我的JS代码会访问search/returnSearchString,然后接收返回值。但每次返回值都是空。。。。就算是我直接在这个returnSearchString()方法里面放上$_POST['search'],也是读取不到值。。虽然可以用GET解决(用JS去读地址栏)。。但我还是想用POST的方法提交。。
请问有什么方法可以解决这种问题么- -!
1 条回复 • 1970-01-01 08:00:00 +08:00
|
|
1
xlmo 2013-07-28 13:52:50 +08:00 1
returnSearchString的开头加上这句试试: $this->search_string = $this->input->get_post('search');
|