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

如何通过dialogID匹配JSON中的content_id并返回对应影片数据?

实现按content_id匹配并打印对应影片JSON数据

修改JavaScript函数逻辑

你只需要在获取到JSON数据后,通过数组的find()方法匹配与传入dialogID一致的content_id,就能精准定位到目标影片数据。以下是修改后的完整代码:

function toggleDialog(dialogID) {
  fetch('api.json')
    .then(response => {
      if (!response.ok) {
        throw new Error(`请求失败,状态码:${response.status}`);
      }
      return response.json();
    })
    .then(data => {
      // 匹配content_id与dialogID一致的影片
      // 若content_id为数字类型,可将dialogID转为数字:Number(dialogID)
      const targetMovie = data.movies.find(movie => movie.content_id == dialogID);
      
      if (targetMovie) {
        console.log('目标影片数据:', targetMovie);
      } else {
        console.log(`未找到content_id为${dialogID}的影片`);
      }
    })
    .catch(error => console.error('加载数据出错:', error));
}

关键说明

  • 匹配逻辑:Array.find()会遍历movies数组,返回第一个满足content_id == dialogID条件的元素
  • 类型兼容:如果JSON中content_id是数字,而dialogID是字符串(HTML元素ID默认是字符串),使用==做松散匹配即可,或者用===配合Number(dialogID)做严格匹配更严谨
  • 错误处理:增加了请求失败的捕获,以及未找到目标影片的提示,避免控制台无输出或报错

确认HTML按钮参数

确保按钮传入的dialogID是正确的content_id,示例写法:

<button onclick="toggleDialog('456')">编辑影片456</button>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 15:55:19