IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

curseur se positionne automatique à la fin


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 358
    Par défaut curseur se positionne automatique à la fin
    Bonjour, j'ai un petit souci avec le curseur...

    J'ai un champ texte.

    J'ai une méthode onKeyUp :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    function Sscc_formatSscc(element) {
    	var elementValue = element.value;
    	if(elementValue != null && elementValue.length >= 2) {
    	// On ajoute les '0' devant les valeurs saisies.
    	 if (!elementValue.startsWith("00")) {
    	   if (elementValue.startsWith("0")) {
    	     element.value = "0" + elementValue;
    	   } else {
    	     element.value = "00" + elementValue;
    	   }
     
    	   // S'il y a plus de 20 caractères on vide le champ (cas du copier/coller)
    	   // Auparavant, on supprime tous les espaces et on place la valeur
    	   //	dans une variable temporaire
    	   var elementValue = element.value.replaceAll(' ', '');
    	   if (elementValue.length > 20) {
    	     element.value = '';
    	   }
    	 }
    	}
     
    	// On ajoute les espaces :
    	// - entre le 2e et 3e caractère
    	// - entre le 19e et 20e caractère
    	// Note : En cas d'un copier/coller sans formatage l'incrément est à 19.
    	// Alors qu'en cas de contrôle/formatage 1 à 1, l'espace entre le 2e et 3e caractère
    	//	compte pour un caractère.
    	var newSscc = '';
    	var elementValue = element.value.replaceAll(' ', '');
    	var i;
    	for (i = 0; i < elementValue.length; i++) {
    		if (elementValue.charAt(i) != ' ' && (i == 2 || i == 19)) {
    			newSscc += ' ';
    		}
     
    	 newSscc += elementValue.charAt(i);
    	}
     
    	// Saisie ultra rapide
    	// En cas de lenteur de l'execution du code, on ne récupère que les 22 premiers caractères
    	// 20 du SSCC + 2 espaces
    	if (newSscc.length > 22) {
    	  newSscc = newSscc.substring(0, 21);
    	}
     
    	element.value = newSscc;
    }
    Or quand je place mon curseur, en plein milieu de mon champ texte pour insérer des chiffres, il insère un chiffre là où j'ai positionné le curseur et le curseur se repositionne à la fin (c'est à dire après le relachement du bouton pressé).

    Vous me direz "c'est normal" car je fais un reset de la valeur à la fin "element.value = newSscc".

    Sous firefox, le curseur reste bien alors que sur IE 6, le curseur se positionne à la fin...

    J'aimerai que le curseur reste à sa place.. mais je sais pas si c'est possible...

    Merci d'avance.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 358
    Par défaut
    finalement, j'ai modifié légèrement mon code pour que le "element.value" ne soit pas mis à jour à chaque onkeyup....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Positionnement automatique du curseur à un point précis
    Par Kidkodak57 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 20/09/2014, 16h05
  2. Positionner automatiquement le curseur à la fin d'un texte dans un textarea
    Par Globolite dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/04/2013, 17h04
  3. Réponses: 0
    Dernier message: 04/10/2008, 13h23
  4. Réponses: 2
    Dernier message: 29/03/2008, 22h09
  5. forcer le curseur à ce positionner dans une zone texte
    Par caton dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 08/04/2005, 14h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo