javascript - 如何获取特定的同级值

标签 javascript jquery

我试图在单击时获取具有类 i_search 的同级的值。

<tr>                        
    <td>12</td>
    <td class="request">24</td>
    <td>36</td> 
    <td><a class="i_search" href="javascript:;" title="Detalle">btn</a></td>
</tr>
<tr>                        
    <td>6</td>
    <td class="request">12</td>
    <td>18</td> 
    <td><a class="i_search" href="javascript:;" title="Detalle">btn</a></td>
</tr>
<tr>                        
    <td>3</td>
    <td class="request">6</td>
    <td>9</td>  
    <td><a class="i_search" href="javascript:;" title="Detalle">btn</a></td>
</tr>

这是我的 jQuery:

$(".i_search").on("click", function(event){
    event.preventDefault();
    var numRos = $(this).find(".request:first").val();
});

console.log(numRos);

但它显示null

最佳答案

您有两个选择,第一个:

var numRos = $(this).closest('tr').find('.request').text();

或者:

var numRos = $(this).parent().siblings('.request').text();

val()仅适用于交互式表单元素,您想要的是 <td> 的文本,所以text()应该使用它来代替。

jQuery 中的 Getters 将仅返回与选择器匹配的第一个元素的文本(在本例中为文本)。在你的情况下只有一个,所以它会正常工作。

引用文献:

关于javascript - 如何获取特定的同级值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25899408/

相关文章:

javascript - 如何在 XML 解析器中的 Jquery 中使用 MATH MML 代码

javascript - 在循环内使用 Coffeescript 闭包避免 JSHint "function within in a loop"

javascript - jQuery 通过 1 个按钮切换所有段落不起作用

javascript - 使用 getElementsByClassName 在特定元素中设置文本

javascript 对象最大大小限制为 10000 个字符

jquery - 根据子图片高度改变父div高度,不超过父div max-width

jquery - 基于 URL 运行 jQuery 的事件处理程序

javascript - 服务器发送的事件仅处理字符串吗?

javascript - 如何在重定向到 jquery 之前预加载(缓存)外部页面?

javascript - 如何获得动态大小的 div 的新大小?