我正在體驗與CKEditor的東西。我讀的文檔,但我不能找到一種方法,做我想要做的事。(我在Java中,JSP頁面)CKEditor和iframes
我有一個路徑
String path = request.getContextPath();
我需要調用這個路徑
<%=path%>/docX/Controller
我有非常基本的:
<div id="editor">
<h1>Hello world!</h1>
</div>
<script>
initSample();
</script>
工作得非常好,但我想,當PA添加內容ge負載。
我試着與我的道路代碼手動添加的iframe,如
<iframe src="<%=path%>/docX/Controller"></iframe>
但它顯示是這樣的:http://docs.cksource.com/images/9/93/CKEditor_iframe_example1.png
如果我深知這是正常的。如果我點擊「預覽」,我會看到我想要看到的。但是我想首先看到它,並且希望能夠對其進行編輯。
它將返回的文件將是一個.html文件。所以我必須從該文件中獲得'innerHTML',並以某種方式將其放在編輯器中。如果有更簡單的方法獲取數據,則不必是iframe
。
現在我試圖從iframe中獲取html並將其放入<p>
。我走到這一步,看起來是這樣的:
<%
String path = request.getContextPath();
%>
<div class="main">
<div class="grid-container">
<div class="grid-width-100">
<div id="editor">
<h1>Hello world!</h1>
<iframe id="frame" src="<%=path%>/docX/Controller"></iframe>
</div>
</div>
</div>
</div>
<script>
initSample();
var iframe = document.getElementById("frame");
var iframe_contents = iframe.contentDocument.body.innerHTML;
alert(iframe_contents);
</script>
我alert()
顯示一個空字符串,但如果我點擊預覽,我可以看到文本。
任何形式的幫助總是讚賞。
編輯:我的html文件只有「測試」裏面。沒有什麼像<html>
<head>
和東西。我試圖
$(document).ready(function() {
var test = $("#frame").contents().find("html").html();
alert(test);
})
但它返回<html></html><body></body>
編輯2:
我改變了它的
$(document).ready(function() {
var mydocument = document.getElementById("frame").contentDocument;
var serializer = new XMLSerializer();
var content = serializer.serializeToString(mydocument);
alert(content);
})
我的結果是:<html xmlns="http://www.w3.org/1999/xhtml"><head><style type="text/css"></style></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;"></pre></body></html>
如果我打開我的.html文件,我看到的全部是test