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

JS/JSON新手求助:如何在jQuery中从JSON获取结果并生成指定格式输出

完善jQuery代码实现预期的座位状态更新

嘿,作为JS/JSON新手,你已经走对路啦!我来帮你补全代码,实现你想要的sc.status(['4_3'], 'unavailable')这类调用效果。

完整的代码实现

先直接给你补全后的代码,再一步步解释:

setInterval(function() {
  $.ajax({
    type : 'get',
    url : 'test.php',
    dataType : 'json',
    success : function(response) {
      // 遍历活动的所有预订记录
      $.each(response.bookings, function(index, booking) {
        // 检查当前预订记录是否包含有效的座位ID
        if (booking.seat) {
          // 通过ID找到座位并将其状态设置为不可用
          sc.status([booking.seat], 'unavailable');
        }
      });
    },
    // 别忘了添加错误处理,方便调试
    error: function(xhr, status, error) {
      console.error('获取预订数据失败:', error);
    }
  });
}, 5000); // 这里的5000是间隔毫秒数,可根据需求调整

关键细节解释

  • 为什么用[booking.seat]? 因为你的示例里sc.status的第一个参数是包含单个座位ID的数组,所以我们把单个的booking.seat值包裹进数组里,完全匹配你要的调用格式。
  • 添加if (booking.seat)检查:避免后端返回的预订记录里没有seat字段时出现错误,让代码更健壮。
  • 错误处理函数:新手调试时很重要,如果test.php返回的JSON格式错误或者请求失败,控制台会打印错误信息,帮你快速定位问题。

确认后端JSON格式

确保你的test.php返回的JSON结构是类似这样的(必须是合法的JSON):

{
  "bookings": [
    {"seat": "4_3"},
    {"seat": "2_4"},
    {"seat": "1_5"}
  ]
}

如果后端返回的seat是多个ID的数组(比如{"seat": ["4_3", "4_4"]}),那直接用sc.status(booking.seat, 'unavailable')就行,不用再包裹数组。

这样每一条预订记录都会触发一次你想要的sc.status调用啦!

内容的提问来源于stack exchange,提问作者erfan mehralizadeh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 08:45:16