爲什麼document.forms[0]
返回一些東西(頁面上的第一個表單),但document.getElementById("thediv").forms[0]
不返回任何內容?爲什麼不document.getElementById(「thediv」).forms [0]返回任何元素?
在一個更復雜的頁面,我期望能夠通過指定的ID來縮小瀏覽器的搜索範圍爲form
元素。
爲什麼document.forms[0]
返回一些東西(頁面上的第一個表單),但document.getElementById("thediv").forms[0]
不返回任何內容?爲什麼不document.getElementById(「thediv」).forms [0]返回任何元素?
在一個更復雜的頁面,我期望能夠通過指定的ID來縮小瀏覽器的搜索範圍爲form
元素。
forms
是document
的財產。 document.getElementById
是一個返回HTMLElement對象的函數。這不具有稱爲表單的屬性。看看jQuery,如果你想更多的邏輯JavaScript。
因爲DOM元素對象only the document
object上沒有這樣的屬性forms
。
表單仍然是同一頁面內的表單,不管它們在文檔樹中的位置。如果您需要根據某個父元素獲取頁面上的一部分表單,則可能需要嘗試像jQuery這樣的庫。
document.getElementById('thediv').getElementsByTagName('form')[0];
爲什麼不給你有興趣在自己的ID的形式,然後就可以直接通過document.getElementById找到相關的表格形式ID。我對你的問題的猜測是,該文件有一個表格數組,但個別的div沒有。 – jfriend00
@ jfriend00 - 有時候這肯定是一種選擇,但在這種情況下,我無法更改客戶端的標記。有了這個問題,我試圖理解爲什麼一種方法有效,而另一種則不行。 ;) – KatieK