Javascript 获取单击的元素jQuery的HTML内容
我有下面的HTMLJavascript 获取单击的元素jQuery的HTML内容,javascript,jquery,html,Javascript,Jquery,Html,我有下面的HTML <label class="editable" id="user_info_username">Hai world...</label> 但是我需要HTML内容 所以Hai-world…如果我理解清楚的话,jQuery需要类似.outerHTML的属性 您要寻找的是类似于outerHTML的东西。不幸的是,Firefox目前不支持它,因此请在此处查找相关工作:。克隆单击的元素,将其包装在一个中,然后请求该元素的HTML-类似于: var html =
<label class="editable" id="user_info_username">Hai world...</label>
但是我需要HTML内容
所以
Hai-world…
如果我理解清楚的话,jQuery需要类似.outerHTML的属性
您要寻找的是类似于
outerHTML
的东西。不幸的是,Firefox目前不支持它,因此请在此处查找相关工作:。克隆单击的元素,将其包装在一个
中,然后请求该元素的HTML-类似于:
var html = $('<div/>').append($(this).clone()).html();
var html=$('').append($(this.clone()).html();
工作演示
我以前也写过一个插件,可以在
(函数($){
$.fn.outerhtml=函数(){
返回$('').append(this.clone()).html();
};
})(jQuery);
也许您可以使用包装器,如下所述:
html:
使用jQuery.clone()的答案在我看来是最好的,但我在这里添加它是另一种方法,可能对其他人有帮助 您可以得到父div的html,这是一个问题,因为可能会有兄弟姐妹返回 像这样:
alert($(this).parent().html()); //will return siblings too
效果不错,可能比我自己的解决方案更合适。我肯定将来会使用它。是的,完全避免了为了获得此功能而更改DOM布局的需要。是否可能重复?
(function($) {
$.fn.outerhtml = function() {
return $('<div/>').append(this.clone()).html();
};
})(jQuery);
<div class="YourHtmlContent">
<label class="editable" id="user_info_username">Hai world...</label>
</div>
$(".editable").live("click",function(){
alert($('.YourHtmlContent').html())
});
alert($(this).parent().html()); //will return siblings too