将jQuery对象和内容转换为字符串?

我抓住各种jquery对象放入一个数组,然后以HTML格式吐出。

我正在尝试将jQuery对象转换为文本字符串,以便稍后可以将其作为HTML吐出。

我现在正在使用这种技术:

console.log($myObject.clone().wrap('
').html());

但是,这似乎只是抓住了我的对象的内容。

例如,如果$ myObject是

My Title

则上面只返回“我的标题”(没有H2标签)。

我也尝试使用.text()但得到相同的结果。

有没有办法将整个jQuery对象转换为文本字符串?

那么,回答我自己的问题。

 console.log($('
').append($myObject.clone()).remove().html());

在这篇post中感谢John Feminella:

如何将jQuery对象转换为字符串?

谁引用这篇文章:

http://jquery-howto.blogspot.com/2009/02/how-to-get-full-html-string-including.html

您正在寻找的不是将JQuery对象转换为字符串而是将DOM节点转换为HTML表示。

JQuery中没有内置方法来执行此操作,Javascript中也没有任何相似之处。

这有点繁琐,但你可以重建它。 下面的代码不完整也没有经过测试,但这是一个想法

 var h = ''; $('#my_selector').each(function(){ h += '<' + this.NodeName; for(var k in this.attributes){ h += ' ' + this.attributes[k].nodeName + '="' + this.attributes[k].value + '" '; } h += '>'; h += this.innerHTML; h += ''; }); 

从你的例子中,你不需要使用调用$ myObject.html()吗?

但是,因为我猜你所追求的可能不仅仅是那样,只是将对象转换为JSON就能完成这项工作吗?

有几个jQuery插件可以做到这一点。 我用过的那个对我来说一直很好的,似乎不再有了,但你可以在这里得到它

http://jollytoad.googlepages.com/json.js

搜索jQuery插件库可以将这两个作为替代方案

http://plugins.jquery.com/project/JSONEncoder
http://plugins.jquery.com/project/LABSJSON

我从来没有尝试过他们中的任何一个,所以不能保证他们的效率

  console.log($('
').append($myObject.clone()).html());