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

jQuery Discussion :

remplir un champ texte automatiquement


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Expert technique
    Inscrit en
    Septembre 2003
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert technique

    Informations forums :
    Inscription : Septembre 2003
    Messages : 328
    Par défaut remplir un champ texte automatiquement
    Bonjour,

    J'essaie de remplir 2 champs texte (nom et prénom) de manière totalement automatique.

    La personne commence par saisir en premier le nom, une liste s'affiche en dessous et propose des noms et prénoms contenus dans une base de données. Lorsque la personne click sur la ligne correspondante, il faut que je remplisse le champ nom et le champ prénom.

    Pour la partie autocomplete, ça fonctionne. J'ai mon script php qui renvoi une chaine au format "nom#prenom" (sans les " bien sur).

    par contre je ne sais pas comment remplir le deuxième champ. Pourriez-vous m'aider svp ?

    Voilà mon code html + js.
    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
    <script>
    $(document).ready(function(){
    	$("#pname").autocomplete("psearch.php", {
    		formatItem: function (row) {
    			var myvar = row.toString();
    			var mytemp = myvar.split("\#");
    			return mytemp[0] + " " + mytemp[1];
    		},
    		formatResult: function (row) {
    			var myvar = row.toString();
    			var mytemp = myvar.split("\#");
    			return mytemp[0];
    		}
    	});
    });
    </script>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="text" name="pname" id="pname" class="text" value="" />
    <input type="text" id="ppname" class="text" name="ppname" value="" />

  2. #2
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 48
    Par défaut
    J'ai pas très bien compris ton code mais essaye ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $("#pname").val(mytemp[0]);
    $("#ppname").val(mytemp[1]);

  3. #3
    Membre éclairé
    Profil pro
    Expert technique
    Inscrit en
    Septembre 2003
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert technique

    Informations forums :
    Inscription : Septembre 2003
    Messages : 328
    Par défaut
    euh ... oui, mais je le mets où ?

    Si je me mets dans formatItem ou formatResult le champ ne prend que la première valeur et ce, de manière automatique, sans que je n'ai eu le temps de faire un choix.

    Pour illustrer ce que j'essaie de faire : http://jquery.bassistance.de/autocomplete/demo/

    Essayez avec le champ Single bird (remote). Au choix de l'oiseau, le champ juste en dessous se rempli tout seul.

    J'ai essayé de comprendre le code et de le transposer sur mon application, mais je ne comprend toujours pas comment ils arrivent à ce résultat.

  4. #4
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    48
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 48
    Par défaut
    Le problème vient peut être de ton $(document).ready(function(){});
    en fait le script est chargé au démarrage de la page et n'est plus rappelé après (et donc au moment ou tu veux faire ton choix)

    Le mieux c'est d'ajouter un écouteur (onClick, onFocus ...) à ton champ texte pour que le script (que tu mettra dans une fonction) soit appeler suite à l'évènement de ton choix.

  5. #5
    Membre éclairé
    Profil pro
    Expert technique
    Inscrit en
    Septembre 2003
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert technique

    Informations forums :
    Inscription : Septembre 2003
    Messages : 328
    Par défaut
    mouai. J'ai l'impression de bidouiller pour le faire fonctionner avec un onclick.
    Ca n'explique pas non plus pourquoi sur le site internet cité plus haut, tout fonctionne bien.

    Je vais finir par prendre leur code, virer tout ce dont j'ai besoin de virer et ne garder que le code nécéssaire à mon fonctionnement. mais ce serait dommage d'en arriver là.

    Je reste encore à l'écoute pour des résolutions possibles. Je continue mes tests.

    Merci.

Discussions similaires

  1. Remplir un champ texte automatiquement via un autre champ texte
    Par Maxime50 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 31/08/2009, 12h54
  2. remplir des champs texte automatiquement avec base
    Par rvm31 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/11/2007, 09h55
  3. Réponses: 1
    Dernier message: 20/03/2007, 09h24
  4. Mise à jour champ texte automatique
    Par Chlo dans le forum Access
    Réponses: 6
    Dernier message: 25/01/2007, 10h20
  5. Remplir 3 champs textes différents avec une liste déroulante
    Par azorol dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/12/2005, 00h04

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