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

点击表格行内按钮时如何获取同一行USUARIO列的单元格值

实现方案

你可以通过以下两种常用方案实现需求:


方案1:直接传值(最简便)

在拼接按钮点击事件时,直接把当前行的USUARIO值作为参数传入方法即可:

  1. 修改按钮拼接代码,把response[i].usuario_oid作为参数传入cambiarDesactivador:
// 把原来的按钮行替换成下面的代码
tr += '<td> <button type="button" onclick="cambiarDesactivador(\'' + response[i].usuario_oid + '\')">Desactivar</button></td>';
  1. 对应的接收方法修改为:
function cambiarDesactivador(usuarioOid) {
  // 这里的usuarioOid就是你需要的当前行USUARIO列取值
  console.log(usuarioOid)
  // 后续业务逻辑写在这里
}

方案2:通过DOM层级查找取值

如果你不想直接传值,可以通过点击的按钮向上查找父级行,再取对应单元格的内容:

  1. 修改按钮拼接代码,把当前按钮实例this作为参数传入:
tr += '<td> <button type="button" onclick="cambiarDesactivador(this)">Desactivar</button></td>';
  1. 对应的接收方法修改为:
function cambiarDesactivador(clickBtn) {
  // 查找按钮所在的行元素
  const currentTr = clickBtn.closest('tr')
  // 查找当前行里USUARIO列的单元格,通过你已经设置的类名OIDCELL精准匹配
  const usuarioOid = currentTr.querySelector('.OIDCELL').textContent
  // 拿到取值
  console.log(usuarioOid)
  // 后续业务逻辑写在这里
}

注意事项

你现有代码拼接表格时,<tbody>之后没有写<tr>标签就直接拼接<td>,属于DOM结构错误,会影响方案2的查找逻辑,需要补全<tr>开头:

tr +=  '<tbody id="tbody' +  i +'">';
tr += '<tr>'; // 补上这行
tr += '<td class= "OIDCELL">' + response[i].usuario_oid + "</td>";
// 剩下的原有代码不变

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 12:30:04