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

点击表格单元格无法获取DeputyID文本框值,该如何解决?

解决点击表格单元格弹出undefined的问题

嗨,我来帮你排查这个问题~

首先看你写的jQuery代码:

$('#DeputyForce tr td').click(function () {
    alert($(this).siblings('.DeputyID').val());
});

这里的核心问题是选择器用错了:

  • siblings() 方法是用来查找当前元素的同级兄弟元素的,但你的.DeputyID文本框是嵌套在被点击的<td>标签内部的,属于它的子元素,不是同级元素,所以siblings('.DeputyID')找不到任何元素,调用val()自然就返回undefined了。

修复方案

你只需要把查找方式换成针对子元素的方法就行,有两种常用的选择:

方案1:使用find()(推荐,支持任意嵌套层级)

find()会在当前元素的所有后代节点中查找匹配的元素,不管文本框嵌套多深都能找到:

$('#DeputyForce tr td').click(function () {
    alert($(this).find('.DeputyID').val());
});

方案2:使用children()(适合直接子元素的场景)

如果你的.DeputyID文本框是<td>的直接子元素(就像你代码里的情况),也可以用children(),它只会查找当前元素的直接子节点:

$('#DeputyForce tr td').click(function () {
    alert($(this).children('.DeputyID').val());
});

现在再点击表格单元格,就能正确弹出对应文本框里的1或2啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 07:07:37