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 :

Modification de fonction pour passer des arguments via l'url


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 151
    Points : 116
    Points
    116
    Par défaut Modification de fonction pour passer des arguments via l'url
    Bonjour à tous,

    Je voudrais modifier la fonction suivante pour pouvoir passer le résultat via l'url et le récupérer sur la page suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function serialize(trier)
    {
    	serial = $.SortSerialize(trier);
    	alert(serial.hash);
    };
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="#" onClick="serialize(); return false;" >serialize all lists</a>
    Ceci me récupère la position d'éléments et me l'affiche dans une alert quand j'active le lien.

    Etant débutant en javascript je me demande comment faire pour modifier cela. Est-ce que quelque chose de ce genre pourrais marcher ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function serialize(trier)
    {
    	serial = $.SortSerialize(trier) ;
    	serials = serial.hash ;
    	return serials ;
    };
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="contenu.php?serial=javascript:serialize();">serialize all lists</a>
    Merci d'avance pour votre aide.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 151
    Points : 116
    Points
    116
    Par défaut
    Comme ceci à mon avis je me rapproche plus de la solution mais ça ne marche pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function serialize(trier)
    {
    	serial = $.SortSerialize(trier);
    	response.write("contenu.php?serie=" + serial.hash);
    };
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="javascript:serialize();" >serialize all lists</a>
    Une idée pour faire fonctionner cela ?

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 151
    Points : 116
    Points
    116
    Par défaut
    Bon j'avance mais ça ne marche toujours pas.

    Cette fonction me retourne les bonnes valeurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function serialize(trier)
    {
    	serial = $.SortSerialize(trier);
    	return(serial.hash);
    };
    Si je mets le code suivant il m'affiche une page blanche appelée 'javascript:serialize();' avec juste les valeurs retournées par la fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="javascript:serialize();">serialize all lists</a>
    Si je mets le code suivant pour essayer de passer la valeur via formulaire, je ne récupère pas les valeurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <form action="contenu.php" method="get">
            <input name="serie" type="hidden" id="serie" />
            <input type="submit" value="Soumettre" />
    </form>
    <script type="text/javascript">
    document.getElementById("serie").value=serialize();
    </script>
    Les deux méthodes (liens ou formulaire) me conviennent mais elle marchent à moitié... comment obtenir que l'une ou l'autre fonctionne ?

    Merci d'avance

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 151
    Points : 116
    Points
    116
    Par défaut
    Bon je prends le problème autrement :

    Comment faire pour que le retour de la fonction se mette en paramètre dans l'url ? J'essaye ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="contenu.php?javascript:serialize();">serialize all lists</a>
    mais l'url devient contenu.php?javascript:serialize(); il n'interprète pas la fonction. Je suppose que c'est un problème de contaténation mais je ne trouve pas comment le régler.

    Si ça peut aider, voici le type de valeur que je reçois via le return :

    trier[]=7&trier[]=8&trier[]=9&trier[]=15&trier[]=11&trier[]=12&trier[]=13&trier[]=14

    Merci

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    151
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 151
    Points : 116
    Points
    116
    Par défaut
    J'ai enfin trouvé !

    Je passe par un location.href dans la fonction.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function serialize(trier)
    {
    	serial = $.SortSerialize(trier);
    	document.location.href = 'contenu.php?' + serial.hash ;
    };
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="javascript:serialize();">Valider les changements</a>

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

Discussions similaires

  1. Pb pour passer des arguments dans l'edi
    Par altair8080 dans le forum Code::Blocks
    Réponses: 4
    Dernier message: 17/07/2013, 09h21
  2. Réponses: 4
    Dernier message: 28/06/2010, 10h34
  3. Passer des arguments pour appli windows (execution console)
    Par death_style dans le forum Visual C++
    Réponses: 1
    Dernier message: 15/02/2010, 13h19
  4. Faire passer des arguments via window.open()
    Par juanqui dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 22/02/2007, 19h27
  5. Réponses: 6
    Dernier message: 21/12/2005, 18h52

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