Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery DOM遍历_Javascript_Jquery_Dom Traversal - Fatal编程技术网

Javascript jQuery DOM遍历

Javascript jQuery DOM遍历,javascript,jquery,dom-traversal,Javascript,Jquery,Dom Traversal,我在使用jQuery查找项目的最简单路径时遇到了困难(虽然解决方案不一定要使用jQuery,但它只是作为一种工具可用)。下面是一个简化的代码示例: <tr> <td>Bob Jones</td> <td class="class-name"> <a href="/start/1">Workshop</a> </td> <td>06/04/11</t

我在使用jQuery查找项目的最简单路径时遇到了困难(虽然解决方案不一定要使用jQuery,但它只是作为一种工具可用)。下面是一个简化的代码示例:

<tr>
    <td>Bob Jones</td>
    <td class="class-name">
        <a href="/start/1">Workshop</a>
    </td>
    <td>06/04/11</td>
    <td class="last">
         <a href="#" class="button">Delete</a>
    </td>
</tr>

鲍勃·琼斯
06/04/11
我想在点击“删除”链接时得到“工作坊”这个词,我想知道这样做最有效的方法是什么。是a)在树的上一层找到
元素并按类名找到同级元素,然后找到其中的链接/文本值。。。b) 要升级到
级别并搜索类名等,或者c)做一些我没有考虑过的事情


我似乎总是很难理解何时以及如何在javascript或jquery中进行dom遍历,我想知道不同可用方法背后的原因,以及如何获得最终结果是否重要。

这个简单的模式通常是最好的:

  • 用通俗易懂的英语说出你想找的东西
  • 将结果视为伪代码
  • 逐字翻译成代码
  • 在您的情况下,可能是:

    I need <td class="class-name"> on the row to which the clicked element belongs. 这项工作:


    你为什么不在你的文件中添加一个id,然后找到它。这将是最快的。我想这是从循环打印出来的?
    $(this).closest("tr").find("td.class-name")
    
    $("td.class-name a", $(this).closest("tr")).text())
    
    $(this).closest("tr").children(":nth-child(2)").children("a").text()