使用jQuery选择对象的子对象

Select Children of an object with jQuery

本文关键字:对象 选择 jQuery 使用      更新时间:2023-09-26

我有一个函数,用来打开一个模式对话框,我需要用"dblclicked"节点中的一些信息填充该对话框:

$(function(){
    $(".delete").live('dblclick', function () {
        var id = $(this).attr('id');
        $('#delID').val(id);
        var txt = this.parentNode.children[2].innerHTML;
        $("#details").html(txt);
        $("#delAssign").dialog('open');
    });
});

html示例:

<tr>
    <td class='delete'></td>
    <td></td>
    ...
    <td></td>
</tr>
<tr>
...
</tr>

现在,我正在获得具有纯javaScript的

var txt = ...

问题是"如何使用jQuery为var.txt实现相同的结果?">

您可以将其更改为:

var txt = $(this).siblings(":eq(2)").html();

我认为这是最快的解决方案。

像这样:

var txt = $(this).parent().children().eq(2).html();

CCD_ 1选择父元素。

.children()选择子

.eq(2)选择子中索引为2的元素

.html()获取该元素的html内容

编辑:由于Felix Kling

children(':eq(2)')更改为children().eq(2)
var txt = $(this).siblings().eq(2).html();

使用eq()作为方法而不是将其作为选择器进行传递会更快。

无论如何,既然您已经有了JavaScript的解决方案,为什么要使用jQuery来降低速度呢?