2012-01-29 132 views
6
document.getElementById("test").value 

document.getElementById("test").innerHTML 

做的第一意味着地址和第二指存儲在地址值?另外,我在哪裏可以找到關於value屬性的文檔?什麼的document.getElementById之間的區別(「測試」)值和的document.getElementById(「測試」)。innerHTML的

+0

[w3schools網站](http://www.w3schools.com/)有一個很好的[參考HTML DOM](http://www.w3schools.com/jsref/default.asp)。 – 2012-01-29 22:18:44

+0

@BrianRogers - 請不要推薦w3schools。見http://w3fools.com爲什麼。 – Oded 2012-01-29 22:20:05

+0

@Oded - 我發現他們的HTML DOM參考非常有用。如果您對該網站感到如此強烈,那麼建議您爲HTML DOM推薦一個替代參考將會更有建設性。 – 2012-01-29 22:34:03

回答

10

.value給你的表格元素(inputselecttextarea)的當前設定值,而.innerHTML基於元素包含的DOM節點構建HTML字符串。

舉一個簡單的例子,轉到JS Fiddle demo,然後在input中輸入一個新值,然後移出輸入。

測試使用以下JavaScript:

document.getElementById('input').onchange = function(){ 
    alert('innerHTML: ' + document.getElementById('input').innerHTML + '; whereas value: ' + document.getElementById('input').value); 
}; 

(以上文本更新,通過am not i am留下評論以下,在註釋的下方。)

+2

如果你願意說*「.innerHTML'建立一個基於DOM節點的HTML字符串,該元素包含」*(或類似的東西),因爲DOM節點不嚴格地具有任何「HTML」內容,所以我會喜歡它。 – 2012-01-29 22:17:07

+1

@amnotiam,同意。我的文字已更新,並感謝您的澄清。 =) – 2012-01-29 22:20:05

3

一些HTML元素有一個屬性"value",比如<input/>其他一些沒有它。

如果您想修改它們,您可以使用DOM屬性(與Javascript一起使用)innerHTML(如果有的話)。此屬性表示元素的含量,所以它可以被用於接受嵌套其他元素如<div/>元件,

3

在HTML許多元件可以具有一個ID,因此value的定義將會改變。

value將基本上是該元素理解爲一個值。例如,一個<input type=text>會給你裏面的文字。

innerHTML將是什麼HTML代碼裏面。例如,一個<TR>將有其子TD,加上其他任何內容。

valueinnerHTML可以(通常)寫入以及讀取。

1

它與某些標籤的工作方式有關,這些標籤是基於其他人在打開和關閉標籤之間的文本時處理的屬性。

.value檢索爲標籤的value屬性設置的任何值。 .innerHTML檢索開始和結束標籤之間的任何內容。

例如,如果HTML標記爲
<input type="text" value="Enter name here" id="user_name" />
並且使用了JavaScript的
var name = document.getElementById('user_name').value
會聲明一個變量name,並給它的價值「在這裏輸入名稱」(假設用戶沒有改變)。在另一方面,如果你有類似HTML的
<div id="abc">blah blah</div>
那麼你可以使用
var text = document.getElementById('abc')
這將設置變量text爲「等等等等」。

0
document.getElementByid('test').value 

用於在文本字段中給出值。像

<input type="text" id="test" name="test"> 

現在它把價值在這個文本工作。

雖然document.getElementByid('test').innerHTML 是用來在指定區域給予價值。像

<div id="test"> 
</div> 

現在它打印div區域內的值。

相關問題