将数组传递给查询参数

时间:2016-05-13 09:35:39

标签: javascript jquery json

嗨朋友我正在尝试合并两个json数组我已经尝试过concat和merge方法,但它没有给出正确的输出请建议一些事情......

var set_image=[{"id":"aerobics"},{"id":"kick boxing"}]
var item_json=[{"id":"net ball"},{"id":"floor ball"}]

合并数组

var finalArray =[{"id":"aerobics"},{"id":"kick boxing"},{"id":"net ball"},{"id":"floor ball"}]

这是我的javascript

var item = JSON.parse(localStorage.getItem("test"));
var item_json = JSON.stringify(item) ;

var page= <?php echo $json_value; ?>;
var set_image=JSON.stringify(page) ;


//var image=set_image.concat(item_json);
var image= $.concat(set_image, item_json)


window.location.href = "modal.php?ids=" + image;

2 个答案:

答案 0 :(得分:1)

将合并后的数组转换为json字符串后,使用 encodeURIComponent() 对其进行编码以传入网址

&#13;
&#13;
var set_image=[{"id":"aerobics"},{"id":"kick boxing"}]
var item_json=[{"id":"net ball"},{"id":"floor ball"}]

var arr= set_image.concat(item_json);

window.location.href  = "modal.php?ids=" + encodeURIComponent(JSON.stringify(arr));
&#13;
&#13;
&#13;

答案 1 :(得分:0)

concat()正是您所需要的,但您对它的使用不正确:

var set_image = [{ "id": "aerobics" },{ "id": "kick boxing" }]
var item_json = [{ "id": "net ball" },{ "id": "floor ball" }]
var image = set_image.concat(item_json);

Working example

另请注意,将image数组附加到字符串的最后一行不会产生预期的效果,因为它会多次追加[object Object]。我猜你想要循环遍历数组并单独附加每个id值。