4

次のコードを見てみましょう。

$('#el').html('ex­am­ple');

では、ソフト ハイフン エンティティを含む要素のテキストを取り戻すにはどうすればよいでしょうか。これらの両方:

$('#el').html();
$('#el').contents().get(0).nodeValue;

「ex­am­ple」ではなく、「example」を戻り値として返す

jsFiddle リンク: http://jsfiddle.net/w7QKH/

ブラウザ:FF7、他のブラウザではチェックしていません。

4

2 に答える 2

6

実際、 $('#el').html() は'example'ソフトハイフンを提供します。$('#el').html().length を実行すると、9 が返されます。つまり、ハイフンは入っていますが、表示されません。'ex­am­ple'この文字列はエスケープされていないため、equalではありません。文字列と比較したい場合は、使用する必要があります-ここでは、そのユニコード値'ex\u00ADam\u00ADple'に置き換えました。http://jsfiddle.net/w7QKH/1/­

于 2011-11-12T16:58:26.033 に答える
1

$('#el').html().replace(/\u00AD/g, '­');

http://jsfiddle.net/K9mUy/を参照してください

于 2011-11-12T16:57:30.593 に答える