我正在尝试使用jQuery获取所选对象的HTML.我知道这个.html()功能; 问题是我需要包含所选对象的HTML(在这种情况下是一个表行,其中.html()只返回行内的单元格).
我已经四处搜索并发现了一些克隆对象的非常"hackish"类型的方法,将它添加到新创建的div等等,但这看起来真的很脏.有没有更好的方法,或新版本的jQuery(1.4.2)是否提供任何类型的outerHtml功能?
编辑:
现在在jsbin.com/ivukar/10上的工作示例
这是我正在尝试做的事情,总结到核心步骤,没有对你来说毫无意义的所有细节:
现在按照这些步骤,假设我们div的HTML内容是"test",我希望如下:
然而,只要我对元素的html内容进行了更改,就会发生这样的事情:例如:$('#element').html('altered');它也会改变变量的内容......
我不明白为什么它会这样做,因为变量只有在将它附加到DOM时才被引用,我不会改变变量的内容......
这是一个JsBin链接,所以你可以看到我的意思.
或者这里是示例代码:
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<script>
var saved = '';
function my_clone()
{
saved = $('#el').clone();
$('#output').append("<a href='#' onclick='my_remove();'>Remove version on screen</a> ----- This removes any element with the id 'el'<br>");
}
function my_remove()
{
$('#el').remove();
$('#output').append("<a href='#' onclick='my_append();'>Append clone to body</a> ----- This takes the cloned object stored in the variable 'saved' and appends it to …Run Code Online (Sandbox Code Playgroud)