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

AJAX Discussion :

[AJAX] SELECT dynamique avec Ajax et Javascript


Sujet :

AJAX

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 4
    Par défaut [AJAX] SELECT dynamique avec Ajax et Javascript
    Bonjour

    Pouvez vous m'aider sur ce problème.
    j'ai la fonction ci dessous qui permet d'affecter des valeurs a des select pré-rempli a partir d'une base mysql .
    je recupere ces valeurs grace a Ajax et et si une de ses valeurs correspond a ceux de mes select pre-remplies ,je les sélectionne.

    cependant ce code marche pas bien .des fois il fonctionne et d'autres fois non.Je suis meme pas sure que le probleme vient de la .
    Connaisant pas bien javascript ,votre avis m'interesse.

    Merci

    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
    function setSelectValue(selectId, value)
    {
    	/*Récupération du select*/
    	var elmt = document.getElementById(selectId);
     
    	/*On parcourt les options du select*/
    	for (var i = 0; i < elmt.options.length; i++)
    	{
    		/*Si l'élément à la bonne valeur on le sélectionne*/
     
    		//alert(te);
    		//alert(value);
    		var te = elmt.options[i].value
    		if(te === value)
    		{
    			elmt.selectedIndex = i;
    			return true;
    		}
    	}
    	/*On a pas trouvé la valeur on retourne faux*/
    	return false;
    }
    Voici un exemple de code pour mes select.

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     <select name="lieu_du_circuit" multiple="multiple" id="circuit">
     
        <?php while ($row_cir=mysql_fetch_array($cir)){ 
    		 $pos = stripos($circuits, $row_cir[0]);  
    		 if ($pos!== false){$val="selected";} else $val="";
    echo "<option $val > $row_cir[0]</option>";
     } ?>
        </select></td>

  2. #2
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par défaut
    Salut

    Avant tout s'il te plait :

    >>> balises CODE autour de tes blocs... sinon c'est quand même pénible

    >>> pas de code serveur... ton moteur php, nous ne pouvons que supposer ce qu'il va recracher : poste le code généré uniquement.

  3. #3
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonsoir,

    Je ne comprend pas très bien ton soucis mais tes options générées n'ont pas de value:
    echo "<option $val > $row_cir[0]</option>";
    A+.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 4
    Par défaut
    Toutes mes excuses pour le manque de balise ,je suis nouveau dans le milieu ,et j'ai pas pris le peine de lire la charte pour les nouveaux.
    Effectivement y'a pas de value dans mes select et le $val est pour une autre fonction.
    Mon problème est assez simple.
    j'ai le code java script qui me parcoure un select et compare les valeurs a celui que il a recu en argument (value). cette valeur je le récupère sur ma base mysql avec Ajax.Si correspondance la ligne est sélectionné.

    ca marche bien ,j'ai pas de retour d'erreur ni rien,c'est juste que cette fonction fonctionne que 1 fois sur 2 et je sais pas pourquoi .j'ai cherché au niveau de l'encodage ,j'ai fait des alert pour afficher les valeurs a comparer
    et des fois j'ai deux valeurs qui sont identiques mais la fonction ne marche et me retourne false.
    Vu que ca fait un moment que je suis dessus et que je trouve pas d'où ca provient, j'espérais que vos avis pourraient m'éclairer a trouver la solution.

    merci

  5. #5
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonsoir,

    @staff85
    Citation Envoyé par RomainVALERI
    >>> pas de code serveur... ton moteur php, nous ne pouvons que supposer ce qu'il va recracher : poste le code généré uniquement.
    A+.

Discussions similaires

  1. Page dynamique avec Ajax et Struts 2
    Par mrjeronimo dans le forum Struts 2
    Réponses: 4
    Dernier message: 05/08/2008, 09h35
  2. [AJAX] requete SQL avec une fonction javascript
    Par Mitsu78 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/03/2008, 21h37
  3. Charger une liste dynamiquement avec AJAX
    Par macra dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 20/10/2006, 21h39

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