使用ajax将数组从视图传递给另一个视图代码点火器


passing array from view using ajax to another view codeigniter

下面添加了我的应用程序的代码段。myArray是一个数组,每个元素包含的对象很少。我需要在第二视图中使用该数组。

当我alert(myJSON);在警报窗口中获取数组时。加载视图时,会显示NULL

Ajax调用我的第一个视图

$(document).ready(function () {
$("#btn-click").click(function(){
    var tmp = myArray;
    var details= JSON.stringify(tmp);
    $.ajax({
        type: "POST",
        url: 'http://localhost/Application1/index.php/Welcome/loadDetails',
        data: {details: details},
        success : function(myJSON){
            alert(myJSON);
            console.log('Posted');
            location.href="http://localhost/Application1/index.php/Welcome/loadDetails"
        },
        error: function(){
            alert('Error!');
        }
    });    
 });
});

控制器

public function loadDetails()
{
            $data = [];
            $data['load_details'] = $this->input->post('details');
    $this->load->view('load_view',$data);
}

第二视图

var_dump($load_details);

我应该做哪些更改来在我的第二个视图中显示已通过的arary。

如果你想在第二视图中获取数据,那么你需要再次调用ajax而不是location.href。(使用location.href,你将无法在loadDetails((方法中获取数据。(

试试这个:

$.ajax({
        type: "POST",
        url: 'http://localhost/Application1/index.php/Welcome/loadDetails',
        data: {details: details},
        success : function(myJSON){
            alert(myJSON);
            console.log('Posted');
             $.ajax({
                type: "POST",
                url: 'http://localhost/Application1/index.php/Welcome/loadDetails',
                data: {details: details},
                success : function(mydata){
                    alert(mydata);
                }
            }); 
        },
        error: function(){
            alert('Error!');
        }
    });