2011-08-17 12 views
0

私はちょうどjavascriptの学習を始めました。私の質問はjavascriptに関する基本的な質問ですが、その背後にあるロジックを学ばなければなりませんでした。これらのコードでなぜjavascriptがHTMLコードを上書きするのですか

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

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

は、日付のみがブラウザ上に表示され、ブラウザは、ブラウザが同じクラスの手段にいる?「これは段落です」最初に書いて、その表示日以下でない.Should「これは段落です」無視しますjavacriptは同じクラスのすべてのタグを上書きしますか? ありがとう

+0

は、あなたが「クラス」によって何を意味するか説明してください。 –

+0

私はid = "demo"のようなidを意味します – user893970

答えて

4

innerHTMLの代わりに、のHTMLがあります。追加したい場合は、最初に何があるかを把握する必要があります。このようなもの:

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

要素のプロパティは、その内容全体を表します。新しい値を割り当てると、内容全体が置き換えられます。 =の代わりに+=を使用して、を置き換えるのではなく、既存の文字列にを追加するように思えます。

1

innerHTMLは、呼び出された要素内のテキストを、それに渡すもので置き換えるため、「This a paragraph」はdateの値に置き換えられます。

は、代わりにこれを試してみてください:

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

は、ブラウザの「これは段落です」最初に、その表示日付の下に書くべきではないでしょうか。

改行してから日付を追加するように見えます。

これは、既存のコンテンツを破壊することなく、それを達成するために行う:

​​
関連する問題