Définir la valeur pour l'éditeur as sans sélectionner tout l'éditeur

90

Ainsi, vous pouvez définir la valeur d'un éditeur as avec setValuemais après avoir défini la valeur, l'éditeur sélectionnera toute la valeur de l'éditeur. Comment désactivez-vous cela? Cela signifie que lorsque je règle la valeur de l'éditeur as sur Hello world, il ne sera pas mis en surbrillanceHello world

Pixeladé
la source

Réponses:

164

Vous pouvez utiliser le deuxième paramètre pour contrôler la position du curseur après setValue

editor.setValue(str, -1) // moves cursor to the start
editor.setValue(str, 1) // moves cursor to the end
un utilisateur
la source
15

Vous pouvez même utiliser clearSelection () après avoir fait un setValue ();

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

Cela fonctionne pour moi!

editor.setValue(editor.getValue(), 1);
circuits
la source
0

J'ai eu le même problème.

Même si vous pouvez définir le deuxième paramètre sur 1 ou -1 , je pense que vous devriez également vérifier ceci: https://ace.c9.io/api/editor.html#Editor.setValue

Editor.setWrapBehavioursEnabled(Boolean enabled)

Utilisez-le juste après avoir créé l'éditeur.

Cela fonctionne très bien pour moi. La différence entre cette méthode et celle partagée par un utilisateur est que la position du curseur n'est pas modifiée, vous pouvez le déplacer vous-même en utilisant Editor.selection.moveTo(row, column), de cette façon, l'utilisateur ne subira pas de changements de position du curseur étranges lors de l'utilisation, par exemple, CTRL + Z pour annuler une action :)

Razvan Tanase
la source
1
Cette réponse n'est pas claire, voulez-vous dire que l'appel Editor.setWrapBehavioursEnabled(Boolean enabled)avec une valeur juste après l'initialisation de l'éditeur empêchera tout le texte d'être sélectionné lors de l'appel editor.setValue?
Macario
0
 var prevtext = $("#editor").val();
 prevtext = prevtext + "<br/>";
 $("#editor").val(prevtext).blur();
Harikesh Yadav
la source