0

我试图向我的 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?

4

3 回答 3

3

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

var table_data = {'tname':tname,'tid':tid,'tprice':tprice};
于 2013-09-24T04:27:09.497 回答
1

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

data: { tname: tname, tid: tid, tprice : tprice  }
于 2013-09-24T04:27:09.650 回答
0

You can do the following.

data: { product: JSON.stringify( your_array_of_objects ) }
于 2013-09-24T04:59:45.193 回答