如何从 Dijit Editor 获取整个 HTML 值
How to get the whole HTML value from Dijit Editor
你好专家我需要帮助
我在我的小部件中使用 dojo Dijit Editor
"rich text editor" 字段,在页面加载时,我从数据库中获取 HTML 文本,并使用 HTML 通常,然后用户可以编辑显示的文本,并且在页面关闭时我必须使用用户编辑文本的源 HTML 设置数据库中的字段
问题是当我执行以下操作时“myDB_txt=myEditor.getValue()
;” getValue()
没有 return 完整的 HTML 代码,它删除了 HTML 标签和 header 标签以及 body 标签,这给我带来了麻烦。
您可以尝试以下方法从您的 dijit/Editor
实例中检索值。
var content = myEditor.attr("value");
var openTags = '<html><head></head><body>';
var closeTags = '</body></html>';
var html = openTags + content + closeTags; // use this
或
var htmlWrapper = function(content){
return '<html><head></head><body>' + content + '</body></html>';
};
var html = htmlWrapper(myEditor.attr("value"));
只需使用 myEditorWidget.get("Value")
,其中 myEditorWidget 引用您的 dijit/Editor
索引
要包装此结果,您可以定义一个 return 结果由 html 标签
包装的函数
wrapResult(myEditor.get("value")));
function wrapResult(html) {
return "<html> <head></head> <body>"+html+"</body></html>";
}
这是一个带有包装结果的示例 Fiddle。
否则如果你想得到整个HTML包含内容的dijit,
您将可以访问它的 Iframe
(具有 id="editor_iframe"
)
然后像下面这样获取最后一个的 html document
(这里你应该导入 dojo/query
包)
query("#editor_iframe")[0].contentDocument.documentElement.outerHTML
这是另一个 Fiddle .
你好专家我需要帮助
我在我的小部件中使用 dojo Dijit Editor
"rich text editor" 字段,在页面加载时,我从数据库中获取 HTML 文本,并使用 HTML 通常,然后用户可以编辑显示的文本,并且在页面关闭时我必须使用用户编辑文本的源 HTML 设置数据库中的字段
问题是当我执行以下操作时“myDB_txt=myEditor.getValue()
;” getValue()
没有 return 完整的 HTML 代码,它删除了 HTML 标签和 header 标签以及 body 标签,这给我带来了麻烦。
您可以尝试以下方法从您的 dijit/Editor
实例中检索值。
var content = myEditor.attr("value");
var openTags = '<html><head></head><body>';
var closeTags = '</body></html>';
var html = openTags + content + closeTags; // use this
或
var htmlWrapper = function(content){
return '<html><head></head><body>' + content + '</body></html>';
};
var html = htmlWrapper(myEditor.attr("value"));
只需使用 myEditorWidget.get("Value")
,其中 myEditorWidget 引用您的 dijit/Editor
索引
要包装此结果,您可以定义一个 return 结果由 html 标签
包装的函数wrapResult(myEditor.get("value")));
function wrapResult(html) {
return "<html> <head></head> <body>"+html+"</body></html>";
}
这是一个带有包装结果的示例 Fiddle。
否则如果你想得到整个HTML包含内容的dijit,
您将可以访问它的 Iframe
(具有 id="editor_iframe"
)
然后像下面这样获取最后一个的 html document
(这里你应该导入 dojo/query
包)
query("#editor_iframe")[0].contentDocument.documentElement.outerHTML
这是另一个 Fiddle .