2011-11-02 16 views
1

私のコードはテキストボックスに書き込み、SetTimeout関数を使用してさまざまなテキスト行を表示します。しかし、それが書き込まれるたびに、それは元のテキストを新しいテキストに置き換えます。私が本当に好きなのは、それが新しい行に書き続けることです。私は非常にjavascriptに新しいので、私はこれで少し助けが必要です。ここに私のコードは、これまでのところです:JavaScriptのテキストボックスの次の行に書き込む方法

putftp.onclick = function() { 
    var Text = document.getElementById("TextBox"); 

    function firsttext() { 
     Text.innerHTML = "This is the first test."; 
     setTimeout(secondtest, 3000); 
    } 
    function secondtest() { 
     Text.innerHTML = "This is the second test."; 
     setTimeout(thirdtest, 5000); 

私はこれが最初のテストで出力が

ようにしたいと思います。

これは2番目のテストです。

代わりに

は、この第2の試験です。

ご協力いただければ幸いです!

答えて

3

innerHTMLの内容を連結する必要があります。現在のところ、値を変更するだけです:

Text.innerHTML += "<br />This is the second test."; 
+0

+はコードを続行します。ありがとうございます。しかし何らかの理由でそれが "
"という部分でエラーを起こします。なぜでしょうか? – javasocute

+0

文字がエスケープ文字である可能性があります。エラーメッセージを生成するブラウザとエラーは何ですか?ここでエラーが表示されますか:http: /jsfiddle.net/mXrGG/ – Jesse

+0

いいえ私はいませんもっと混乱していますよLol。ここでエラーが発生していますText.innerHTML + = "
これは2番目のテストです"; これはランタイムエラーです興味深いのは、私が
を取り除くとうまくいくからです。 – javasocute

1

テキストを置き換えて、内容を追加することはありません。行を追加するには、現在のhtmlを新しいものに連結します。

putftp.onclick = function() { 
var Text = document.getElementById("TextBox"); 

function firsttext() { 
    Text.innerHTML =Text.innerHTML+ "This is the first test."; 
    setTimeout(secondtest, 3000); 
} 
function secondtest() { 
    Text.innerHTML = Text.innerHTML+"This is the second test."; 
    setTimeout(thirdtest, 5000); 
関連する問題