将值从视图传递到控制器,再从控制器传递到视图?

时间:2015-05-28 09:52:20

标签: javascript php codeigniter

我有一个控制器假设a并且它有一个假设index()的函数,我使用这样的javascript从我的视图中传递数据假设b

var formURL = "<?php echo base_url();?>a/index/"+ $("#someid").val();
$.post(formURL).done(function(data){$("#something").html(data);

现在我在我的控制器中收到它:

public function index($somevalue= ""){
....
....
}

现在从控制器a执行后,我再次将数组值传递给视图b,如下所示:

public function index($somevalue= ""){
....
....
$data['value1'] = $value1;
$data['value2'] = $value2;
$this->load->view('b', $data);
}

现在当我在视图b中访问数据时,这样:

<?php if (isset($value1)) {
echo $value1;
}?>

我没有得到value1的价值。在这种情况下我做错了什么???

1 个答案:

答案 0 :(得分:1)

如果使用AJAX,情况会好很多。这正是它的确切做法。

  

对控制器的AJAX请求,即(将数据发送到控制器)       获取AJAX结果,即(将数据发送回视图)

从客户端您可以更新它。

您可以获取表单值,例如

var formDatas = $('#form').serialize();

然后发出像

这样的ajax请求
$.ajax({
    type : 'POST',
    url : 'url',
    data : {formdata : formDatas },
    success: function(result){
      //update the view with the result
    }

}