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

如何为JavaScript动态渲染的表格td元素添加自定义id与data属性

实现方案

完全可以为描述列的数据单元格添加你需要的唯一标识符,只需要修正变量引用和语法小问题即可。

核心修改逻辑

  • 描述列对应的是td集合里索引为1的节点:函数内ii初始值为0,第1个td渲染分类名称后ii自增为1,正好对应承载values.description的单元格
  • 你写的标识符模板里用了不存在的obj变量,直接替换为入参values取id即可——传入的序列化Python字典本身就携带数据主键id字段
  • 你写的属性末尾多了一个冗余双引号,需要删除避免HTML渲染异常

修改后可直接用的代码

将原函数中渲染描述列的代码替换为如下内容:

function refresh_row(row, values) {
  var tds = $(row).children('td');
  var ii = 0;

  $(tds[ii]).html(values.type.name);
  ii++;
  // 给描述列td加唯一标识,同时渲染内容
  $(tds[ii])
    .attr('id', `result-${values.id}`)
    .attr('data-testid', values.id)
    .html(values.description);
  ii++;
  $(tds[ii]).html(values.company);
  ii++;
  $(tds[ii]).html(values.place);
  ii++;
}

补充提示

  • 如果运行时提示id不存在,先检查后端序列化输出的JSON结构,确保主键id字段被正常返回
  • jQuery的.attr()方法会自动覆盖同名属性,重复调用渲染函数也不会出现属性重复叠加的问题
  • 后续要加编辑按钮时,直接在.html()的参数里拼接按钮DOM即可,比如可以写成.html(${values.description} )

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 23:39:14