Установить значение для редактора туза без выбора всего редактора

Таким образом, вы можете установить значение редактора туза с помощью setValue, но после установки значения редактор выберет все значение редактора. Как вы отключите это? Это означает, что, когда я устанавливаю значение редактора туза на Hello world, он не выделяет Hello world

Ответ 1

Вы можете использовать второй параметр для управления позицией курсора после setValue

editor.setValue(str, -1) // moves cursor to the start
editor.setValue(str, 1) // moves cursor to the end

Ответ 2

Это работает для меня!

editor.setValue(editor.getValue(), 1);

Ответ 3

Вы можете даже использовать clearSelection() после выполнения setValue();

editor.setValue("Hello World");
editor.clearSelection(); // This will remove the highlight over the text

Ответ 4

 var prevtext = $("#editor").val();
 prevtext = prevtext + "<br/>";
 $("#editor").val(prevtext).blur();

Ответ 5

У меня была такая же проблема.

Даже если вы можете установить второй параметр как 1 или -1, я думаю, вы также должны это проверить: https://ace.c9.io/api/editor.html#Editor.setValue

Editor.setWrapBehavioursEnabled(Boolean enabled)

Используйте это право после создания редактора.

Это очень хорошо для меня. Разница между этим методом и тем, который используется пользователем, заключается в том, что позиция каретки не изменяется, вы можете перемещать ее самостоятельно, используя Editor.selection.moveTo(row, column), таким образом пользователь выиграл Если вы используете, скажем, CTRL + Z, чтобы изменить действие, измените положение странной каретки:)

Ответ 6

У меня та же проблема. Это не читается как код htmlField.setValue("<h1 id="tkp"></h1>"); Однако cssField и jsField появляются в области ACE отлично.

(function i() {
    if (sessionStorage.getItem("html")) {
        htmlField.setValue(sessionStorage.getItem("html"));
        htmlField.clearSelection()
    } else {
        htmlField.setValue("<h1 id="tkp"></h1>"); // This is doesn't works for me!
        htmlField.clearSelection()
    }
    if (sessionStorage.getItem("css")) {
        cssField.setValue(sessionStorage.getItem("css"));
        cssField.clearSelection()
    } else {
        cssField.setValue("body {\n  background: #2b2b2b;\n  height: 100vh;\n  flex-wrap: wrap;\n}\n\nh1 {\n  width: 100%;\n  display: inline-block;\n  font-weight: 300;\n  color: #929292;\n}\n\np {\n  color: #bababa;\n  font-weight: 300;\n  margin: 0;\n}"); // ok
        cssField.clearSelection()
    }
    if (sessionStorage.getItem("js")) {
        jsField.setValue(sessionStorage.getItem("js"));
        jsField.clearSelection()
    } else {
        jsField.setValue("// Try edit msg\nvar tkp = 'Hello world'\nvar icon = ' <i class=\"fa fa-smile-o\"></i>'\n\nconsole.log(tkp)\n\n$('#tkp').html(tkp+ icon)");  // ok
        jsField.clearSelection()
    }
})()