2010-05-19 66 views
2

我正在使用Jquery Wysiwyg编辑器,并试图捕获组成内容区域的html以存储在数据库中。无论如何,要获取元素的html并将其保存为字符串?我的代码看起来像tihsjquery-jquery wysiwyg将html作为字符串返回

<iframe id="wysiwyg_IFrame"> 
    <html> 
     <head></head> 
     <body> 
      <ul> 
       <li>This is a test</li> 
      </ul> 
     </body> 
    </html> 
</iframe> 

我要么希望得到与<html>....</html>或只是身体<body>...</body>没有人知道这是可能的开头的字符串?由于

回答

3

我想出了答案,这是Jquery的所见即所得的可怕文档中的HTML文件的主体标签之间的一切。它甚至不在维基文件中的文档中。为了让您只需要使用文本区域中的内容div的名称和.va(),所以对我来说是

$('#wysiwyg').val(); 

如果你想要一个像我想d,前设置的内容。从DB抢东西,并把它放在jQuery的所见即所得的文本区域在页面加载时,您需要使用setContent方法,它看起来像这样

var content = 'place me in the text area'; 
$('#wysiwyg').wysiwyg('setContent', content); 

感谢所有的答案,是的.html ()似乎适用于所有其他情况,但不会与jquery wysiwyg一起使用。

1

您可以通过jQuery的html函数获取元素的HTML:

var htmlString = $('#wysiwyg_IFrame').html(); 

或者,只需使用一个DOMElement自己innerHTML属性,它现在的HTML5标准的一部分,它在所有主要的被支持浏览器(包括IE   —其实,这是一个微软创新)年:

var htmlString = $('#wysiwyg_IFrame')[0].innerHTML; 
0

应该作品:

var html = $("#wysiwyg_IFrame body").html(); 
0

var theHTML = $('#wysiwyg_IFrame').html();

0

$('#wysiwyg_IFrame').html()不起作用?

更新:

尝试.contents()

$('#wysiwyg_IFrame').contents().find('body').html() 

$('#wysiwyg_IFrame').contents().html() 

从文档:

的如果iframe与主页位于同一个域,则也可以使用方法来获取iframe的内容文档。

+0

由于某种原因,它只是返回一个空字符串。那是我认为它是,但它不工作。我想知道它是否与jquery wysiwyg编辑器 – McNabbToSkins 2010-05-19 13:04:44

+0

@McNabbToSkins有关:请参阅我的更新答案。 – 2010-05-19 14:22:30

0
$('wysiwyg_IFrame').content().find("body").html() 

返回你的iframe中加载

相关问题