1

重複の可能性:
ibeer、imilk、ibug、ibeer などの iPhone アプリの作成方法
javascript を使用して生の html コードを取得する

次のような html セクションがあるとします。

<div id="post_content">
  <span>&#9654;<span>
</div>

(これは右向き三角形です)

「post_content」の子を生のhtml、つまり上記のコードとまったく同じ文字列として取得したいので、次のようにします。

"<span>&#9654;<span>"

私がする時

$('#post_content').html() 

たとえば、$.post() を使用して投稿すると、%E2%96%B6 に変わります。

post_content のコンテンツを元の文字列とまったく同じ文字列として取得するにはどうすればよいですか?

4

2 に答える 2

0

ここを見てください:

jQueryを使用してHTMLエンティティをデコードするには?

基本的に使用:

var decoded = $("<div/>").html(encodedStr).text();

あなたが望むものを手に入れます。

于 2012-09-14T12:36:52.627 に答える
0

この優れた回答で説明されているように、受信した HTML は DOM に解析され、スクリプトでのみ使用できます。responseTextXMLHttpRequestからプレーン テキストしか取得できませんでした。

innerHTMLDOM から取得した場合(何をするか$el.html())、シリアル化されます。HTML5はその方法を指定していますが、ほとんどの場合、従来のブラウザは準拠していません。

問題$.post()は、このメソッドがHTTPリクエストでテキストを送信することです-もちろんエンコードされます。encodeURIComponent表示される内容は、取得した Unicode 文字列に適用されるだけです。alert()または値を試してみるとconsole.log()、その真の表現が表示されます。

于 2012-09-14T14:32:10.727 に答える