php - 如何将 JSON 数组传递到 URL?

标签 php jquery arrays json

JavaScript/JQuery
var arr=[];

$('.element').each(function(i)
{
    arr.push({"id":i,"value":$(this).attr('data-value')});
});

$.get('/json.php?arr='+arr,function(result)
{
    alert(result);
});

PHP

<?php

$j = json_decode($_GET['arr'], true);

foreach($j as $k => $v)
{
    echo $v['id'].':'.$v['value'].'<br />';
}

?>

问题

但问题是 URL 看起来像 /json.php?arr=[object Object],[object Object] 而不是 /json.php?arr=[{"id":1,"value":"value 1"},{"id":2,"value":"value 2"}]。我需要将对象转换为字符串吗?但我不想使用 JQuery 以外的其他库。这可能吗? :/

最佳答案

试试 JSON.stringify

$.get('/json.php?arr='+JSON.stringify(arr),function(result)

关于php - 如何将 JSON 数组传递到 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11067657/

相关文章:

javascript - 从 ajax 响应中删除尾随 0

php - 在 PHP 中使用自动加载类时是否存在性能缺陷?

jquery - jquery 移动应用程序中滚动条不可见

javascript - 让 DataTables 不过滤某些行

javascript 二维数组 - 排序和合并

php - 使用 Hash(#) 的 Ajaxpageloak,有数字时异常(exception)(例如 : #1)

php - 如何在 codeigniter 中进行否定形式验证?

php - 类事件不在页面上工作

arrays - 查找数百万个数组的交集

c++ - 初始化字符串数组中的值 C++