簡體   English   中英

無法在JavaScript中使用getElementById檢索li或ul

[英]Cannot retrieve an li or ul using getElementById in JavaScript

我可以使用JavaScript使用函數document.getElementById('id')獲得HTML對象。 如果獲得表單,則可以通過執行以下操作來進一步指定表單中的元素:

document.getElementById('form_id').form_element.value="hello world";

如果表單中的元素是輸入和文本區域,則此方法有效。 (我還沒有嘗試過所有方法...)但是,這不適用於無序列表或列表元素。 一旦使用表單獲取元素,就無法指定li元素。 有人知道為什么嗎? 另外,無序列表用於不同的形式,所以我不能給它一個唯一的ID。 (除非我將粘貼代碼復制到各處...)

您可以在任何DOM元素上運行.getElementsByTagName('ul') 例如,使用以下HTML:

<form id="form_id">
    <input name="form_element"/>
    <ul>
        <li>foo</li>
        <li>bar</li>
    </ul>
</form>

做這個:

var form = document.getElementById('form_id');
form.form_element.value = 'hello world';

var ul = form.getElementsByTagName('ul');
ul = ul && ul[0];
console.log(ul);

var lis = form.getElementsByTagName('li');
for (var i = 0; i < lis.length; i++) {
    console.log(lis[i].innerText);
}

jsFiddle在這里: http : //jsfiddle.net/YSpVg/1/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM