跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 学 JS 碰到的一个问题
未分類
21 7 月 2020

学 JS 碰到的一个问题

学 JS 碰到的一个问题

資深大佬 : zzybot1996 4

有这么一个方法:

  function f(obj) {         var table = obj.parentNode.parentNode.parentNode;         var tr = obj.parentNode.parentNode;         table.removeChild(tr);     }``` 它的调用者是这样的: `<a href="javascript:void(0);" onclick="f(this)">删除</a>`  我的目的是点击删除,就会删除该链接所在的当前行,问题来了,f()方法里为什么把 `var table = obj.parentNode.parentNode.parentNode;`替换成 `var table = document.getElementsByTagName("table")[0];`时就报错了呢?这个 html 里只有一个 table,这样获取应该没问题吧。。。 

大佬有話說 (4)

  • 主 資深大佬 : zzybot1996

    新发现,在 f()中加了这么一行,
    `alert(document.getElementsByTagName(“table”)[0]);`点删除后网页会弹出[object HTMLTableElement]。
    改成:
    `alert(obj.parentNode.parentNode.parentNode);`点删除后居然弹出的是 null 。。。。

  • 資深大佬 : SilentDepth

    对于这样一个结构:

    <table>
    __<tbody>
    ____<tr>
    ______<td>
    ________<a href=”…” onclick=”…”>

    <a>.parentNode.parentNode.parentNode 和 document.getElementsByTagName(‘table’)[0] 是同一个元素吗?

  • 主 資深大佬 : zzybot1996

    @SilentDepth 我不知道<tbody>是什么。。能跟我大概说说吗?

    之后我又用 alert(obj.parentNode.parentNode.parentNode);运行了一下,发现返回的是 TableSectionElement,是不是就是<tbody>呢?

    document.getElementsByTagName(‘table’)[0]
    返回的是 TableElement

  • 主 資深大佬 : zzybot1996

    @SilentDepth 查了一下 tbody,
    每个表格可以有一个表头、一个表尾和一个或多个表体,分别以 THEAD 、TFOOT 和 TBODY 元素表示。
    用 TBODY 这个标签可以控制表格分行下载,当表格内容很大时比较实用,在需要分行下载处加上<tbody>和</tbody>

    大概明白什么意思了,明天再仔细查查,话说我看的视频里面老师都没讲这个。。

    感谢您的回复!

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具