0

例:

var html_string = '<img src="http://www.example.com/image.jpg" />'
$(html_string).html()

生成:

'' // an empty string

で元の HTML 文字列が返されることを期待していましたhtml_string

どうしたの?期待した結果を得るにはどうすればよいですか?

4

2 に答える 2

4

.html() は、要素の内部 html を提供します。<img>要素は null/空であるため、内部 html がないため、空の文字列が得られます。
あなたが欲しいのは外側のhtmlです

$(html_string)[0].outerHTML
于 2013-06-14T04:30:28.760 に答える
2

jQuery.html()は、選択した DOM 要素内の HTML コードを返しますが、要素の HTML は返しません。イメージ要素内に HTML がないため、空の文字列を取得しているのはそのためです。jQuery はこれに対する解決策を提供しませんが、DOM 要素 (jQuery 要素ではない) で outerHTML を使用できます。jQuery でこれを行う場合は、要素を作成し、必要なものをその中に入れてから、 を使用します.html()。見て:

var string = '<img src="a.jpg"/>';
var $el = $(string);

var $wrapper = $('<p>').append($el).html();

私が助けたことを願っています。

于 2013-06-14T04:30:36.547 に答える