Javascript 获取距离表中单选按钮最近的文本框

Javascript 获取距离表中单选按钮最近的文本框,javascript,jquery,html,Javascript,Jquery,Html,我无法获取离所选单选按钮最近的文本框。这是我到目前为止所做的尝试,它不断地返回我“未定义” HTML: 我知道,toUpdate的值在这一点上是任意的,但它稍后将用作选择器,因此包括在内。尝试使用and 注意,这只是我根据您的标记提出的一个建议,您的目标可以通过其他方式实现(jQuery是遍历和操作DOM的丰富库)尝试使用和 请注意,这只是我根据您的标记提出的一个建议,您的目标可以通过其他方式实现(jQuery是遍历和操作DOM的丰富库)jQuery next()函数查找同级元素,但由于这些元素

我无法获取离所选单选按钮最近的文本框。这是我到目前为止所做的尝试,它不断地返回我“未定义”

HTML:

我知道,
toUpdate
的值在这一点上是任意的,但它稍后将用作选择器,因此包括在内。

尝试使用and

注意,这只是我根据您的标记提出的一个建议,您的目标可以通过其他方式实现(jQuery是遍历和操作DOM的丰富库)

尝试使用和

请注意,这只是我根据您的标记提出的一个建议,您的目标可以通过其他方式实现(jQuery是遍历和操作DOM的丰富库)

jQuery next()函数查找同级元素,但由于这些元素在不同的td元素下分开,因此您必须爬升DOM:

$("input[name='capacity']:checked").closest("tr").find("input[type='text']").val();
因此,它所做的就是转到最近的父元素,然后搜索子文本输入。

jQuery next()函数查找同级元素,但由于这些元素在不同的td元素下分开,因此必须爬升DOM:

$("input[name='capacity']:checked").closest("tr").find("input[type='text']").val();
$(function() {
    $("input:radio").click(function() {
        if ($(this).is(":checked")) {
            var value = $(this).closest("tr").find("input:text").val();
        }
    });    
});
因此,它所做的就是转到最近的父对象,然后搜索子对象文本输入

$(function() {
    $("input:radio").click(function() {
        if ($(this).is(":checked")) {
            var value = $(this).closest("tr").find("input:text").val();
        }
    });    
});
代码检查某个radio元素上的单击事件,然后检查该元素是否已选中,如果已选中,则获取radio元素的父行,在该行中查找输入文本,获取输入文本的值,然后将该值保存在var值处,这样您就可以对该值执行任何操作:)

问候

代码检查某个radio元素上的单击事件,然后检查该元素是否已选中,如果已选中,则获取radio元素的父行,在该行中查找输入文本,获取输入文本的值,然后将该值保存在var值处,这样您就可以对该值执行任何操作:)


问候

你能解释一下吗?我真的不想在不理解其基本逻辑的情况下给出答案。你能解释一下吗?我真的不想在不理解其基本逻辑的情况下给出答案。当您想在基元素的父元素(即它旁边)中查找元素时,应该使用
.next
。在您的情况下,
capacity
的父元素是
td
,但它没有任何其他元素,没有任何可返回的内容。当您想在基本元素的父元素中找到元素时,应该使用
.next
。在您的例子中,<代码>容量<代码>的父级是<代码> TD/<代码>,但是它没有任何其他元素,没有什么可以返回的。请考虑至少添加一个小句子来解释代码片段为什么和如何回答OP问题。好,我在这里是新的:代码检查某个radio元素上的单击事件,然后检查该元素是否已选中,如果已选中,则获取radio元素的父行,在该行中查找输入文本并获取输入文本的值,然后将该值保存在var值处,这样您就可以对该值执行任何操作:)关于!较好的现在,而不是评论,编辑你的答案,并把这个解释在答案本身,你会有一个很好的书面答复。请考虑至少添加一个小句子来解释为什么和你的代码片段如何回答OP问题。好,我是新的:代码检查某个radio元素上的单击事件,然后检查该元素是否已选中,如果已选中,则获取radio元素的父行,在该行中查找输入文本并获取输入文本的值,然后将该值保存在var值处,这样您就可以对该值执行任何操作:)关于!较好的现在,编辑你的答案,把这个解释放在答案中,而不是评论,你会得到一个写得很好的答案。
$(function() {
    $("input:radio").click(function() {
        if ($(this).is(":checked")) {
            var value = $(this).closest("tr").find("input:text").val();
        }
    });    
});