You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从指定URL获取展示total_txs数据失败,div内容为空求助

别担心,这问题其实挺常见的,咱们一步步排查解决:

问题排查与修复方案

1. 跨域请求限制(最可能的核心原因)

现代浏览器的同源策略会直接阻止跨域AJAX请求,除非目标API开启了CORS(跨域资源共享)配置。你可以先打开浏览器开发者工具(按F12),切换到「控制台」标签,看看有没有类似 No 'Access-Control-Allow-Origin' header is present on the requested resource 的报错。

如果确实是CORS问题,有两个可行的解决方向:

  • 服务器端代理:在你自己的服务器上写一个中转接口,由服务器去请求chain.so的API,再把结果返回给前端——这样就不存在跨域限制了。
  • 改用JSONP请求:如果该API支持JSONP,你可以在请求URL末尾加上 ?callback=?,让jQuery自动处理JSONP回调,示例代码如下:
    $.getJSON("https://www.chain.so/api/v2/address/DOGE/DK1i69bM3M3GutjmHBTf7HLjT5o3naWBEk?callback=?", function(data) {
      // 后续数据处理逻辑
    });
    

2. 确认API返回的数据结构

我查了这个API的返回格式,它的层级结构是这样的:

{
  "status": "success",
  "data": {
    "address": "DK1i69bM3M3GutjmHBTf7HLjT5o3naWBEk",
    "total_txs": 123, // 这是你要获取的目标字段
    // 其他无关字段...
  }
}

你需要访问的是 response.data.total_txs,而不是直接写 data.total_txs——如果路径写错了,自然拿不到值,div就会是空的。

3. 补全代码并添加错误处理

你的代码看起来没写完,而且缺少错误回调逻辑,就算请求失败也没法定位问题。这里给你一份完整的可测试代码:

<script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
<div id="totaldonations"></div>
<script>
$.getJSON("https://www.chain.so/api/v2/address/DOGE/DK1i69bM3M3GutjmHBTf7HLjT5o3naWBEk?callback=?", function(response) {
  if (response.status === "success") {
    $('#totaldonations').text(response.data.total_txs);
  } else {
    $('#totaldonations').text("获取交易数失败");
  }
})
.fail(function(jqXHR, textStatus, errorThrown) {
  console.log("请求出错:", textStatus, errorThrown);
  $('#totaldonations').text("请求失败,请查看控制台日志");
});
</script>

这里做了几个优化:

  • 升级了jQuery版本(你用的1.11.0太老旧,可能存在兼容性问题)
  • 加上了JSONP回调参数解决跨域
  • 正确指向了total_txs的路径
  • 添加了失败回调,方便排查问题

4. 额外检查点

确认页面中确实存在id为totaldonations的div元素,且代码执行时该元素已经加载完成(比如把script放在div后面,或者用$(document).ready()包裹代码)。

内容的提问来源于stack exchange,提问作者Chris 'Pig' Hill

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:21:00