web-dev-qa-db-ja.com

エディター全体を選択せず​​にaceエディターの値を設定

したがって、setValueを使用してaceエディターの値を設定できますが、値を設定すると、エディターはエディターの値全体を選択します。これをどのように無効にしますか?つまり、aceエディターの値をHello worldに設定すると、Hello worldが強調表示されません。

82
Pixeladed

2番目のパラメーターを使用して、setValueの後のカーソル位置を制御できます。

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

SetValue()を実行した後、clearSelection()を使用することもできます。

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

これは私のために働く!

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

同じ問題が発生しています。

2番目のパラメーターを1または-1に設定できますが、これも確認する必要があると思います: https://ace.c9.io/api/editor.html#Editor.setValue

_Editor.setWrapBehavioursEnabled(Boolean enabled)
_

エディタを作成した直後にこれを使用してください。

これは私にとって非常にうまくいきます。このメソッドと a user で共有されるメソッドの違いは、キャレットの位置が変更されないことです。この場合、ユーザーはEditor.selection.moveTo(row, column)を使用して移動できます。 CTRL + Zなどを使用してアクションを元に戻すと、キャレットの位置が変になります:)

0
Razvan Tanase
 var prevtext = $("#editor").val();
 prevtext = prevtext + "<br/>";
 $("#editor").val(prevtext).blur();
0
Harikesh Yadav