2011-01-24 7 views
45

ウェブページでは、私に整数値を与えるWebServiceを呼び出しています。この値をテキストブロックに表示する必要があります。私は現在、HTML <span>を使用しています。JavaScriptの内容を<span>に設定してください。

これまでのところ、私はスパンに自分の値を入れる2つの方法を見つけました。 innerText()はIE独自の方法であり、innerHTML()は非標準に準拠した方法ですが、広くサポートされています。

テキストを正しく設定する方法は、<span></span>の間で、Javascriptからどうすればよいですか?

+5

HTML5の通り、 'innerHTML'は**で**一部仕様http://dev.w3.org/html5/spec/Overview.html#innerhtmlのすべてのブラウザでサポートされています(すべてのブラウザのInternet Explorerでのマイナス*いくつかの問題)。 'select'要素/サブ要素) – scunliffe

答えて

49

これは、標準に準拠したブラウザ間で安全です。

例:最新ブラウザのhttp://jsfiddle.net/kv9pw/

var span = document.getElementById('someID'); 

while(span.firstChild) { 
    span.removeChild(span.firstChild); 
} 
span.appendChild(document.createTextNode("some new content")); 
18

は、あなたがこのようにそれを行うだろう、などのjQueryなどのJavaScriptライブラリを使用せずにそれを行うには:

$("#myspan").text(''+intValue); 
+6

あなたはca nは単に '.text(intValue)'を実行します。連結による強制的なストリング変換は必要ありません。最新のブラウザ用の – chaos

1

:あなたはjQueryのを使用したいならば

var span = document.getElementById("myspan"), 
    text = document.createTextNode(''+intValue); 
span.innerHTML = ''; // clear existing 
span.appendChild(text); 

が、それだけで、このですMaximally Standardsに準拠した方法は、必要なテキストを含むテキストノードを作成し、それをスパンに追加することです(現在存在するテキストノードをすべて削除します)。

私が実際にやる方法は、jQueryの.text()を使用することです。

28

、あなたは、textContentプロパティを設定することができNode.textContentを参照してください。

var span = document.getElementById("myspan"); 
span.textContent = "some text"; 
+5

ハレイ – Aligned

関連する問題