Sha*_*oli 61 javascript jquery ace-editor
我是ACE
第一次使用编辑器.我有以下与此相关的问题.
如何
ACE
在页面上找到编辑器实例?我不想维护一个包含编辑器实例的全局变量.我需要根据需要找到它的实例.如何获得并设定其价值?
我愿意接受任何比ACE
编辑更好的编辑器的建议,它将支持几乎所有类型的语言/标记/ CSS等,并与之高度集成jQuery
.
Mrc*_*ief 123
根据他们的API:
标记:
<div id="aceEditor" style="height: 500px; width: 500px">some text</div>
Run Code Online (Sandbox Code Playgroud)
查找实例:
var editor = ace.edit("aceEditor");
Run Code Online (Sandbox Code Playgroud)
获取/设置值:
var code = editor.getValue();
editor.setValue("new code here");
Run Code Online (Sandbox Code Playgroud)
根据我的经验,Ace是我见过的最好的代码编辑器.很少有其他如CodeMirror等,但我发现它们比Ace更不实用或难以集成.
还有一个付费的,我没有尝试过(我现在也记不住了).如果我能找到它,将在以后更新.
Ben*_*ter 15
为了保存编辑器的内容,我在它之前放置了一个隐藏的输入,并像这样初始化了编辑器:
var $editor = $('#editor');
if ($editor.length > 0) {
var editor = ace.edit('editor');
editor.session.setMode("ace/mode/css");
$editor.closest('form').submit(function() {
var code = editor.getValue();
$editor.prev('input[type=hidden]').val(code);
});
}
Run Code Online (Sandbox Code Playgroud)
提交表单后,我们获取编辑器值并将其复制到隐藏的输入.
小智 8
我用隐藏的输入解决了这个问题:)
<input type="hidden" name="komutdosyasi" style="display: none;">
<script src="/lib/aceeditor/src-min/ace.js" type="text/javascript" charset="utf-8"></script>
<script>
var editor = ace.edit('editor');
editor.session.setMode("ace/mode/batchfile");
editor.setTheme("ace/theme/monokai");
var input = $('input[name="komutdosyasi"]');
editor.getSession().on("change", function () {
input.val(editor.getSession().getValue());
});
</script>
Run Code Online (Sandbox Code Playgroud)
小智 6
让我们假设我们已经在html中的标签上初始化了ace编辑器.EX : <div id="MyAceEditor">this the editor place holder</div>
.
在javascript部分,加载ace.js后,
第一步是找到你的编辑器实例,如下所示.
var editor = ace.edit("MyAceEditor");
Run Code Online (Sandbox Code Playgroud)
要从ace编辑器获取值,请使用如下的getValue()方法.
var myCode = editor.getSession().getValue();
Run Code Online (Sandbox Code Playgroud)
要将值设置为ace编辑器(将某些代码推送到编辑器中),请使用setValue()
如下方法.
editor.getSession().setValue("write your code here");
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
51105 次 |
最近记录: |