2011-08-17 76 views
0

我剛開始學習javascript,我的問題是關於javascript的基本問題,但我必須學習它背後的邏輯。爲什麼javascript覆蓋Html代碼

<p id="demo">This is a paragraph.</p> 

    <script type="text/javascript"> 
    document.getElementById("demo").innerHTML=Date(); 
    </script> 

有了這些代碼,只有日期出現在瀏覽器和瀏覽器會忽略「這是一個段落」。應該不是瀏覽器寫第一「這是一個段落」以及其下的顯示日期?作爲一個在同一類的手段,javacript將覆蓋同一類的每個標籤? 謝謝

+0

請解釋一下你的「下課」的意思。 –

+0

我的意思是一樣的ID =「演示」 – user893970

回答

4

innerHTML替換無論你有什麼特定的HTML。如果你想追加,你需要先抓住那裏的東西。事情是這樣的:

var myTag = document.getElementById("demo"); 
myTag.innerHTML = myTag.innerHTML + Date(); 
1

一個元素的innerHTML財產是其全部內容。當您爲其分配新值時,將替換整個內容。這聽起來像你想使用+=,而不是=,使您追加到現有的字符串,而不是取代它。

1

innerHTML替換元素中的文本,它調用與您傳遞給它的東西,因此「這一段」將由日期的值替換。

試試這個:

document.getElementById("demo").innerHTML = 
    document.getElementById("demo").innerHTML + Date(); 
0

不應該瀏覽器先寫「這是一個段落」以及其下的顯示日期?

似乎你想要一個換行符,然後是日期。

這樣做是爲了實現這一目標,不破壞現有的內容:

​​
相關問題