为什么 Javascript 代码在尝试保存 ACE 编辑器的内容时会运行
Why Javascript code gets running while trying to save ACE editor's content
我正在尝试保存ace编辑器的内容,其中包含一些JavaScript示例代码,如下所示:
<script>
(function(){
alert("I SHOULD NOT BE RUNNING");
})(jQuery);
</script>
但是当我尝试使用以下代码添加编辑器的内容时:
function save(editor) {
$(window).unbind('beforeunload');
$("form[name='note'] input[name='note_title']").val($("#editor-title").val());
$("form[name='note'] textarea[name='note_body']").html(editor.getValue());
$("form[name='note'] input[name='version']").val("ace");
$("form[name='note']").submit();
}
将弹出一个包含I SHOULD NOT BE RUNNING
消息的消息框!!
我已将王牌编辑器绑定到以下内容:
<div id="editor" class="" style="display: none;"><?php echo htmlspecialchars($body) ?></div>
并使用以下方法运行 ace 编辑器:
window.editor = ace.edit("editor");
window.editor.getSession().setMode("ace/mode/markdown");
window.editor.commands.addCommand({
name: 'save',
bindKey: {win: 'Ctrl-S', mac: 'Command-S'},
exec: save
});
我的问题:
- 为什么 JavaScript 内容会运行?
- 如何防止它运行?
哎呀!! 我找到了原因!!
在function save(editor)
中,我应该添加不使用html()
函数的编辑器内容;但有了val()
.
正确的save()
函数是:
function save(editor) {
$(window).unbind('beforeunload');
$("form[name='note'] input[name='note_title']").val($("#editor-title").val());
// WRONG [ IT WILL RUN THE JS ]
// $("form[name='note'] textarea[name='note_body']").html(editor.getValue());
// CORRECT
$("form[name='note'] textarea[name='note_body']").val(editor.getValue());
$("form[name='note'] input[name='version']").val("ace");
$("form[name='note']").submit();
}
我发布我自己的问题的答案,也许以后可以帮助别人。 :)
相关文章:
- ExtJS网格单元格编辑器,防止焦点松动问题
- 可以't使用PHP使用Froala编辑器上传图像URL
- 如何在corona sdk中从CK编辑器中检索数据
- MobileFirst:在客户端运行计时器作业-最佳选项
- Eclipse编辑器中无法访问的代码
- 如何将拼写检查集成到密文编辑器
- 一个页面上有多个Ace编辑器,没有预先设置元素
- ACE编辑器正在删除模块,因为define是't一根绳子
- 如何从DOM中删除Aloha编辑器
- 用于用户内容的简单代码编辑器/文本格式化程序(在Rails中)
- 在plone 5中将自定义的灵活性内容类型插入到tinymce编辑器中
- JavaScript游戏引擎——编辑器中的代码运行:)检查器中的错误
- 内容编辑器 Web 部件脚本不在 IE 11 中运行(如果开发人员工具处于打开状态,则运行)
- 未运行 Tinymce 富文本编辑器示例
- Intellij IDEA,在编辑器中运行Javascript代码
- js Twitter登录时在Codio编辑器上运行“页面不可用”
- 任何方法,使一个触发器或按钮,让用户按下和运行,而不是去脚本编辑器
- 有人能帮我解决我的代码笔脚本获胜的原因吗;t在文本编辑器中运行
- 如何在运行时使用Ace代码编辑器添加新的突出显示规则?
- 为什么 Javascript 代码在尝试保存 ACE 编辑器的内容时会运行