<分区>
我正在尝试通过下拉菜单来选择语言来实现 Ace 代码编辑器。我的下拉菜单有一个 id 模式。我已经让编辑器正常工作,但我无法像我希望的那样使用下拉菜单更改语言。我当前的代码是
var editor = ace.edit("code");
var textarea = $('textarea[name="code"]').hide();
editor.setTheme("ace/theme/textmate");
editor.getSession().setMode("ace/mode/sql");
editor.getSession().setValue(textarea.val());
editor.getSession().on('change', function(){
textarea.val(editor.getSession().getValue());
});
$('#mode').on('change', function(){
var newMode = $("mode").val();
editor.session().setMode({
path: "ace/mode/" + newMode,
v: Date.now()});
});
如上所述,这成功启动了编辑器,但是我无法从初始语言 SQL 更改语言。我遇到了这个问题 Dynamically update syntax highlighting mode rules for the Ace Editor 这就是为什么我包括
v: Date.now()
但仍然没有运气。