2013-09-04 26 views

Odpowiedz

118

Można użyć drugiego parametru kontrolować położenie kursora po setValue

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

Działa to dla mnie!

editor.setValue(editor.getValue(), 1); 
0
var prevtext = $("#editor").val(); 
prevtext = prevtext + "<br/> 
$("#editor").val(prevtext).blur(); 
+0

Ten kod ma błędy składni – FrankerZ

6

Można nawet użyć clearSelection() po zrobić setValue();

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

Mam już ten sam problem.

Chociaż można ustawić drugi parametr albo lub -1, myślę, że należy również sprawdzić to: https://ace.c9.io/api/editor.html#Editor.setValue

Editor.setWrapBehavioursEnabled(Boolean enabled) 

Korzystając z tego prawa po utworzeniu edytor.

Działa to bardzo dobrze dla mnie. Różnica między tą metodą a tą udostępnioną przez a user polega na tym, że pozycja karetki nie jest zmieniona, możesz ją przenieść samodzielnie przy użyciu Editor.selection.moveTo(row, column), w ten sposób użytkownik nie będzie doświadczał dziwnych zmian pozycji podczas używania, powiedzmy, CTRL + Z do cofnij działanie :)

+0

Ta odpowiedź nie jest jasna, masz na myśli to, że wywołanie 'Editor.setWrapBehavioursEnabled (włączona funkcja Boolean)' z pewną wartością zaraz po inicjalizacji edytora uniemożliwi wybór całego tekstu podczas wywoływania 'editor.setValue'? – Macario