javascript - 如何在嵌套表中选择不包含某些元素的标签?

标签 javascript jquery html

有html代码:

<body>
<table>
    <tr>
        <td>A</td>
        <td>
            <table>
                <tr>
                    <td>B</td>
                    <td>...</td>
                </tr>
            </table>
        </td>
    </tr>
    <tr>
        <td>C</td>
        <td>
            <table>
                <tr>
                    <td>D</td>
                    <td>...</td>
                </tr>
            </table>
        </td>
    </tr>
</table>
<button id="click">click</button>
</body>


我想要的是在上面的 html 代码中获取文本 AC。事实上,我已经尝试了一些方法。我的想法是选择没有table的descent标签元素的td标签元素。但是,我只能通过 table 的下降标签元素获取这些 td 元素,jquery 代码如下。
您可以尝试在 jsddle 上运行.

$("#click").on("click", function () {
var ss = $("td:has(table)");
$.each(ss, function (index, value) {
        alert(index + $(this).html());
    });
});

感谢您的帮助。

最佳答案

试试这个:

$("#click").on("click", function () {
    $("td").each(function(index){
        if(($(this).closest('table').parent('td').length == 0) && ($(this).find('table').length == 0))
           alert(index + $(this).html());
    });
});

DEMO

关于javascript - 如何在嵌套表中选择不包含某些元素的标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23078007/

相关文章:

对象中的Javascript舍入十进制值

javascript - 我如何将此 AJAX json 结果(具有键/值属性)转换为 javascript 数组

javascript - 当 ngView 通过自身内部的链接更改时,我的函数将从 $scope 中剥离

c# - 在 javascript/jquery 中创建动态 TreeView ?

javascript - 混淆您的jquery代码

javascript - 在 Indesign 中在脚注中插入字符

javascript - Selenium 中的 Xpath

html - Angular-Routing 无法在云中工作,但在本地主机上工作

javascript - Bootstrap 4 如何在同一页面上使用多个 jQuery 版本

javascript - 为什么在 Firefox 中输入逗号时此正则表达式会清除所有字符?