2

特殊文字が含まれている可能性があるため、CreateTextNode を使用してテキストを処理する必要があります。

私は何が同等になるのだろうかと思っています:

/* var status holds some text */  

contentStatus = document.createTextNode(status);

 content = '<div id="user">' + name +'</div><div id="stat">' + contentStatus + '</div>';    

現在、がDOM に挿入されたときのようにcontentStatus表示されているだけです。[object Text]content

私が見ているところはどこでも、appendChildで使用されていCreateTextNodeます。上記と同等のものをどのように達成できますか?これは有効ではないと思いますか?

4

1 に答える 1

2

使用textContentプロパティ:

 content = '<div id="user">' + name+'</div>'
 +'<div id="stat">' 
 + contentStatus.data//This takes the actual string
 + '</div>';    

しかし、より良い方法があります:

var user = document.createElement('div');
curName = document.createTextNode(name);
user.appendChild(name);
user.id = "user";
var stat = document.createElement('div');
stat.id = "stat";
contentStatus = document.createTextNode(status);
stat.appendChild(contentStatus);
user.appendChild(stat);
console.log(user);//    <div id=​"user">​…​&lt;/div>​

この方法は、dom 要素を処理し、そのように操作できるため、より優れています。

于 2013-07-06T22:08:32.287 に答える