从 PHP 中检索 Javascript 中的 JSON 数组

2024-04-10

我试图从 PHP 返回一个 json 编码的数组到 JS,我之前已经这样做过很多次了,但现在我遇到了一个奇怪的错误。我成功获取数据并且它在 chrome 中显示数组。但是,如果我指定了,我无法让它进入AJAX成功功能dataType: 'json'。如果我删除 dataType 并使用var parsed = JSON.parse(data);它将进入 success 函数,但会抛出意外的类型错误。请帮忙。

铬输出:

[
    {
        "fullURL": "https://lh6.googleusercontent.com/--ZKG_L-SA9c/UgqECNqP4II/AAAAAAAAA2I/i5nCa3CvKqM/s912/2010raptor_firstdrive002_opt.jpg",
        "thumbURL": "https://lh6.googleusercontent.com/--ZKG_L-SA9c/UgqECNqP4II/AAAAAAAAA2I/i5nCa3CvKqM/s128-c/2010raptor_firstdrive002_opt.jpg",
        "location": "",
        "caption": "",
        "tags": "",
        "program_instance_id": "a0Ji0000001pPO6EAM"
    },
    {
        "fullURL": "https://lh3.googleusercontent.com/-kyUg7_Rul90/UgqEDIu4DhI/AAAAAAAAA2Q/WF0BAEI7smo/s912/220px-Microchip_PIC24HJ32GP202.jpg",
        "thumbURL": "https://lh3.googleusercontent.com/-kyUg7_Rul90/UgqEDIu4DhI/AAAAAAAAA2Q/WF0BAEI7smo/s128-c/220px-Microchip_PIC24HJ32GP202.jpg",
        "location": "",
        "caption": "",
        "tags": "",
        "program_instance_id": "a0Ji0000001pPO6EAM"
    }
]

PHP

$arr = array();
foreach($photoURLS as $photo)
{
$arr[] = $photo;
}

}
echo json_encode($arr);

JS

$.ajax
({
    async: "false",
    type: 'POST',
    data: {action: 'var1', albumName: 'var2'},
    dataType: 'json',
    url: '/controller/function',
        success: function(data) 
        {
        //alert($.isArray(data));
        $.each(parsed, function(i, index) {
        alert(index.fullURL);
        });
        }
 });

所以我重新编写了代码,认为这个解决方案可能适合你。

$.ajax({
  async: "false",
  type: 'POST',
  data: {
    action: 'var1',
    albumName: 'var2'
  },
  dataType: 'json',
  url: '/controller/function',
  success: function(data) {
    $.each(data, function(index, element) {
      console.log(index);
      console.log(element.fullURL);
      console.log(element);
    });
  }
});

我无法测试 ajax 事件,但是我已经测试了您为每个循环提供的 json,它似乎可以工作。小提琴链接 http://jsfiddle.net/GBXSw/

var data = [{
    "caption": "",
        "fullURL": "https://lh6.googleusercontent.com/--ZKG_L-SA9c/UgqECNqP4II/AAAAAAAAA2I/i5nCa3CvKqM/s912/2010raptor_firstdrive002_opt.jpg",
        "location": "",
        "program_instance_id": "a0Ji0000001pPO6EAM",
        "tags": "",
        "thumbURL": "https://lh6.googleusercontent.com/--ZKG_L-SA9c/UgqECNqP4II/AAAAAAAAA2I/i5nCa3CvKqM/s128-c/2010raptor_firstdrive002_opt.jpg"
}, {
    "caption": "",
        "fullURL": "https://lh3.googleusercontent.com/-kyUg7_Rul90/UgqEDIu4DhI/AAAAAAAAA2Q/WF0BAEI7smo/s912/220px-Microchip_PIC24HJ32GP202.jpg",
        "location": "",
        "program_instance_id": "a0Ji0000001pPO6EAM",
        "tags": "",
        "thumbURL": "https://lh3.googleusercontent.com/-kyUg7_Rul90/UgqEDIu4DhI/AAAAAAAAA2Q/WF0BAEI7smo/s128-c/220px-Microchip_PIC24HJ32GP202.jpg"
}];

$.each(data, function (index, element) {
    console.log(index);
    console.log(element.fullURL);
});

另外一个好消息是,您的 json 100% 有效,因此传回的内容是正确的。希望这可以帮助

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 PHP 中检索 Javascript 中的 JSON 数组 的相关文章

随机推荐

  • Chrome 在使用位置粘性/固定时会切断重影图像

    我正在尝试使用 HTML5 拖放position fixed从位于屏幕左侧固定位置的菜单中拖动元素 以下代码在 Safari 和 Firefox 中运行良好 但当我在 Chrome 中尝试时 滚动后 从拖放 API 生成的 幽灵 图像不可见
  • Leaflet.js:如何从地图中删除多个图层

    我正在使用 Leaflet js 制作地图 现在我想从地图中删除添加的图层 通过单击输入 按钮 所有选中的复选框将更改为未选中 并且所有相应的图层将从地图中删除 要从地图中删除图层 需要该图层的 ID 该 id 等于相应复选框的 id 这就
  • 如何使用 mysqli 准备好的语句绑定 N 个参数?

    在旧的 mysql 代码中 我有一个完美运行的查询 如下所示 questioncontent isset GET questioncontent GET questioncontent searchquestion questioncont
  • 如何检测用户何时成功完成php中文件的下载

    我有一个处理文件下载请求的 php 页面 我需要能够检测文件何时已成功下载 如何才能做到这一点 也许有一些方法可以检测该客户端 然后向服务器发送确认 Thanks 编辑 通过句柄 我的意思是该页面正在执行以下操作 file var www
  • Android - 应用程序安装在 SD 卡上时内部存储与外部存储

    我有一个可以下载大量内容的应用程序 用户之间有所不同 但可能是 200mb 到 1GB 或更多 目前 我将所有这些内容保存在外部存储上 因为这可能是空间最多的区域 例如 SD 卡 这在大多数情况下都可以正常工作 但在某些情况下这不一定是理想
  • Clojure 是否有命名私有函数的约定?

    当我在 Clojure 中定义私有函数时 我通常使用 前缀作为视觉指示符 表明该函数不能在我的命名空间之外使用 例如 defn name let formatter formatter yyyy MM dd HH mm ss SSSS fo
  • HTML5 push/replaceState 和 标签导致安全异常

    我有一个网站的测试版本 位于正常网站的子域中 例如 http test x com http test x com代替http x com http x com 我用标签将所有资源请求转换回原始域 在我实现 HTML5 Push repla
  • 对象或原始类型

    有人可以向我解释一下在 JAVA 中如何使用 Integer Boolean 等来代替它们的原始类型吗 我似乎无法理解他们提供的优势 它们似乎在处理空值时造成了不必要的问题 Thanks Boolean Integer Long 是对象 您
  • android ndk 未定义对方法的引用

    您好 很抱歉这篇长文章我正在尝试编译一些静态类 即 jsmn c json c 和 buf c 它们是我从下载的 jsmn json 库的一部分https github com alisdair jsmn example downloads
  • 如何使用spark-submit为Spark作业选择队列?

    有没有办法提供参数或设置来选择我希望运行 Spark submit 作业的队列 通过使用 queue 因此 火花提交作业的一个示例是 Spark submit master YARN conf Spark executor memory 4
  • Dash 数据表下载至 Excel

    我目前正在使用下面的脚本从我创建的破折号下载数据表 下载工作正常 但是当我在本地托管 Dash 并尝试通过另一个系统单击下载按钮时 文件正在主机上下载 而不是在用户计算机上下载 如果我的问题看起来很愚蠢 我深表歉意 因为我对 Dash 和
  • scala 中可以有命名常量吗?

    看起来 Java 中的注释需要常量 我想做 object ConfigStatics final val componentsToScan Array com example PropertySource ConfigStatics com
  • 由于 lambda 表达式,缩小失败

    当 ASP NET 捆绑程序尝试缩小以下脚本时 它会失败 Minification failed Returning unminified contents 164 59 60 run time error JS1195 Expected
  • 为什么改变 SO_RCVBUF 的值不起作用?

    我正在制作一个程序 它创建一个原始套接字以读取所有流量 在调用socket 和recvfrom 之间 最后一个在循环中从缓冲区中取出所有数据包 我等待了5秒 当我运行该程序时 我使用 hping3 命令以 更快的模式 以快速填充缓冲区 向我
  • ASP.Net MVC Ajax.BeginForm OnComplete 在 Razor 视图中传递 C# 参数

    我在 MVC c Razor 视图中有以下代码 string url Projects MonthRangesScriptsPartial using Ajax BeginForm MonthRanges Projects new id V
  • SQL Server 的 SELECT JOIN 语句导致的死锁

    当执行带有两个表的 JOIN 的 SELECT 语句时 SQL Server 似乎 分别锁定语句的两个表 例如通过像这样的查询 这 SELECT FROM table1 LEFT JOIN table2 ON table1 id table
  • 求 O(log n) 中值

    问题是我们如何找到整数值接收流的中位数 例如 对于 12 14 252 243 15 中位数是 15 O log N 其中 N 是值的数量 请注意 我们有一个整数值流 因此通过接收每个值 我们必须重新找到中位数 例子 Input media
  • 如何修复 Nodejs 中的“无法读取未定义的属性推送”错误?

    我编写了一个简单的应用程序来学习 Nodejs 但是当我在 cmd 中运行 nodemon index js 时出现此错误 类型错误 无法读取未定义的属性 push 应用程序崩溃 启动前等待文件更改 我已遵循 udemy 课程中的所有说明来
  • C 可变长度数组存储持续时间

    On this http en cppreference com w c language storage duration网站上有以下段落 强调我的 自动存储时间 当进入声明对象的块时分配存储空间 并在通过任何方式 goto return
  • 从 PHP 中检索 Javascript 中的 JSON 数组

    我试图从 PHP 返回一个 json 编码的数组到 JS 我之前已经这样做过很多次了 但现在我遇到了一个奇怪的错误 我成功获取数据并且它在 chrome 中显示数组 但是 如果我指定了 我无法让它进入AJAX成功功能dataType jso