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

点击DIV内按钮无法获取当前行TD值,返回完整HTML的问题

问题解决:点击Approve按钮获取当前行第一个的数值

你的代码存在两个核心问题:

  1. 选择器逻辑错误:$('#MasterList1').closest('tr') 试图查找表格的父级<tr>,但表格本身并不在<tr>内部,导致这个选择器无法定位到任何元素,最终customerId会是undefined。
  2. 未关联点击按钮与对应行:当前代码无法区分点击的是哪一行的按钮,无法精准定位目标行。

修正方案:

1. 修改HTML中的按钮点击事件

将onclick属性改为传递当前按钮的引用:

<input type="button" id="btnApprove" class="btn" value="Approve" runat="server" style="height:24px; width:82px;" tabindex="5" onclick="Approve(this); return false;">

(注:HTML中多个元素使用相同id="btnApprove"不符合规范,建议改为用类名统一控制,比如class="btnApprove")

2. 修正JavaScript函数

通过传入的按钮元素,向上遍历找到所在的<tr>,再获取该行第一个<td>的文本内容:

function Approve(btn) {
    var customerId = 0;
    // 从按钮向上定位到所在行,再获取第一个td的纯文本
    customerId = $(btn).closest('tr').find('td:eq(0)').text().trim();
    console.log(customerId);
}

关键说明:

  • $(btn).closest('tr'):从点击的按钮出发,向上查找最近的<tr>元素,精准锁定按钮所在的行。
  • .find('td:eq(0)'):在目标行中找到索引为0的第一个<td>。
  • .text().trim():获取该<td>的纯文本内容,并去除首尾空白字符,确保得到干净的数值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 00:50:22