首页 > 解决方案 > 从 CodeMirror 获取 html 数据,我得到 Uncaught ReferenceError: $ is not defined

问题描述

我使用包含我的 jquery 库的 getValue() 从 CodeMirror 编辑器获取我的 html 数据,然后使用以下代码加载 html 数据:

$("newIframe").contents().find("head").html(headDataTag[0]);
$("newIframe").contents().find("body").html(bodyDataTag[0]);

我在 newIframe 中检查了文档的头部和正文,html 数据似乎正确,并正确呈现了 html、javascript 代码,但不是 jquery $(document).ready() 代码部分。

使用 Opera 调试器并单击网络选项卡,它正确显示下载的 jquery(从节点服务器本地),http 状态为 200 ok,但是,它没有显示在源选项卡下。

在主代码中使用相同的 html 数据加载没有问题,而无需从 CodeMirror 编辑器获取数据。

我做错了什么?

标签: codemirror

解决方案


我在下面更改了 jQuery 代码:

$("newIframe").contents().find("head").html(headDataTag[0]);
$("newIframe").contents().find("body").html(bodyDataTag[0]);

到下面的纯javascript代码,一切都开始工作了:

var iframeId = document.getEelementById("newIframe");
var iframeDoc = iframeId.contentDocument || iframeId.contentWindow.document;

iframeDoc.open();
iframeDoc.write(editor.getValue) // CodeMirror data from it's editor window
iframeDoc.close();

推荐阅读