将多个数组发送到ajax

时间:2013-09-24 04:23:08

标签: php jquery ajax codeigniter

我试图将多个数组发送到我的jquery ajax

阵列是这样制作的

var i = 0;
    var tname = [];
    var tid = [];
    var tprice = [];

    $(".party_list li").each(function() {
        tname[i] = $(this).data('catname');
        tid[i] = $(this).data('catid');
        tprice[i] = $(this).data('price');
    i++;    
    });

并发送到我的jquery ajax,就像这样

var table_data = 'tname='+tname + '&tid='+tid + '&tprice='+tprice;

$.ajax({
    url:base+'site/store_tabledata',
    type:'POST',
    data:table_data,
    dataType: 'json',
    success:function(response2){
    console.log(response2.name);
        $('#planner').load(base+"site/table_planner");
    }

    });

当我尝试在我的

中循环这些数组的内容时
 $('#planner').load(base+"site/table_planner);

它说像

  

提供了一个无效的参数foreach()

有没有办法将数组变量发送到ajax?

3 个答案:

答案 0 :(得分:3)

尝试将其作为对象发送..

var table_data = {'tname':tname,'tid':tid,'tprice':tprice};

答案 1 :(得分:1)

我认为在您的数据变量中,您无法传递字符串,而是尝试以下操作:

data: { tname: tname, tid: tid, tprice : tprice  }

答案 2 :(得分:0)

您可以执行以下操作。

data: { product: JSON.stringify( your_array_of_objects ) }