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

如何用JavaScript获取JSON中person字段值并设置为img标签src?

如何用JavaScript提取JSON的person字段并设置为img的src?

首先得先把你提供的JSON调整成合法格式——里面的单引号要换成双引号,不然JavaScript解析的时候会报错。先整理成可直接使用的对象:

// 修正格式后的JavaScript对象
const taskData = { 
  start_date: "2018-03-19 09:00", 
  end_date: "2018-03-19 11:00", 
  text: "Plan: Make New Server", 
  description: "Setup Apache", 
  section_id: "mobilepay", 
  person: "peterpaul,janelane", 
  progress: "", 
  state: "plan", 
  delay: "", 
  type: "task" 
};

接下来分几步实现你的需求:

1. 提取并拆分person字段的值

person字段是逗号分隔的两个名字,用split(',')就能把它拆成单独的名字数组:

const personNames = taskData.person.split(',');
// 现在personNames的值是 ["peterpaul", "janelane"]

2. 将名字设置为img的src属性

分两种场景来处理:

场景一:动态创建新的img元素并添加到页面

如果需要自动生成头像标签,可以遍历名字数组,逐个创建img并设置属性:

personNames.forEach(name => {
  const avatarImg = document.createElement('img');
  // 这里假设头像的URL格式是 `/avatars/{name}.png`,你可以根据实际情况修改路径
  avatarImg.src = `/avatars/${name}.png`;
  avatarImg.alt = `${name}的头像`; // 记得加alt属性,提升页面可访问性
  // 把img添加到页面的目标容器,比如body或者某个指定的div
  document.body.appendChild(avatarImg);
});

场景二:给页面上已有的img元素设置src

如果页面已经有对应的img标签(比如id分别为avatar-peter和avatar-jane),直接获取元素赋值即可:

const peterAvatar = document.getElementById('avatar-peter');
const janeAvatar = document.getElementById('avatar-jane');

peterAvatar.src = `/avatars/${personNames[0]}.png`;
janeAvatar.src = `/avatars/${personNames[1]}.png`;

peterAvatar.alt = `${personNames[0]}的头像`;
janeAvatar.alt = `${personNames[1]}的头像`;

补充:如果数据是JSON字符串格式

如果你的数据是后端返回的JSON字符串,需要先解析成JavaScript对象:

const jsonString = `{ 
  "start_date": "2018-03-19 09:00", 
  "end_date": "2018-03-19 11:00", 
  "text": "Plan: Make New Server", 
  "description": "Setup Apache", 
  "section_id": "mobilepay", 
  "person": "peterpaul,janelane", 
  "progress": "", 
  "state": "plan", 
  "delay": "", 
  "type": "task" 
}`;

const taskData = JSON.parse(jsonString);
// 之后的步骤和上面完全一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 09:38:40