2015-05-22 17 views
5

在這段代碼中我得到的警報0與其使用「ABC」如何讓李標籤,它是在使用的getElementById

<ul> 
    <li>First Node</li> 
    <li id="repoFolder" value="abc">Lazy Node</li> 
</ul> 
<button onclick="rootFolder()">Click Me</button> 

JS UL標籤的價值:

function rootFolder() { 
    alert(document.getElementById("repoFolder").value); 
} 

回答

3

您需要閱讀屬性值,因爲HTMLLiElement沒有value屬性:

document.getElementById("repoFolder").getAttribute("value"); 

而且由於value屬性沒有在規範中定義的li標籤,這是更好地使用數據屬性(.getAttribute("data-value")):

<li id="repoFolder" data-value="abc">Lazy Node</li> 

然後HTML將是有效的和IDE的不會抱怨未知屬性。

查看下面的演示。

function rootFolder() { 
 
    alert(document.getElementById("repoFolder").getAttribute('data-value')); 
 
}
<ul> 
 
    <li>First Node</li> 
 
    <li id="repoFolder" data-value="abc">Lazy Node</li> 
 
</ul> 
 
<button onclick="rootFolder()">Click Me</button>

2

嘗試使用getAttribute()

function rootFolder() { 
 
    alert(document.getElementById("repoFolder").getAttribute('value')); 
 
}
<ul> 
 
    <li>First Node</li> 
 
    <li id="repoFolder" value="abc">Lazy Node</li> 
 
</ul> 
 
<button onclick="rootFolder()">Click Me</button>

1
  1. 您只需要更換線路

    alert(document.getElementById(「repoFolder」)value); 與

    alert(document.getElementById(「repoFolder」)。getAttribute('value'));

1

添加以下行:

alert(document.getElementById("repoFolder").getAttribute('value')); 
相關問題