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 :

conversion de type et de variable


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2009
    Messages : 176
    Points : 118
    Points
    118
    Par défaut conversion de type et de variable
    Bonjour a tous,
    En faite ce n'est pas vraiment un problème de conversion type mais surtout de variable, j'ai une variable chaine crée en PHP qui change tout au long du programme, cette variable (nommé $unit) sert de name et d'id à une liste select html. je veux récupérer cette variable en paramètre d'une fonction javascript pour la passer dans une url ensuite mais le problème c'est que JS le reconnait non pas comme une chaine mais comme un objet.
    J'aimerais pouvoir récupéré la chaine de caractère qui identifie mon objet mais je ne connait pas cette propriété.

    j'ai essayé ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    form=document.getElementById(NomFormu)
    window.open('ajoutUnite.php?variable='+numeroVar+'&formu='+form, "PopUp",
    mais apres il me met NULL dans l'URL.
    Merci d'avance pour vos réponse.

  2. #2
    Membre émérite Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Points : 2 953
    Points
    2 953
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.open('ajoutUnite.php?variable='+numeroVar+'&formu='+NomFormu, "PopUp", ...

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2009
    Messages : 176
    Points : 118
    Points
    118
    Par défaut
    si je fais sa, dans mon URL, j'ai: [object HTMLSelectElement] a la place du nom

  4. #4
    Membre émérite Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Points : 2 953
    Points
    2 953
    Par défaut
    Tu devrais avoir ça avec form! Que représente NomFormu dans ton code? Je pense que tu a déjà dû y coller un objet via un document.getElementById, par exemple.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2009
    Messages : 176
    Points : 118
    Points
    118
    Par défaut
    non je n'y ai rien affecté, nomformu représente une chaine de caractère qui est affecté au name et a l'id d'un select donc j'ai l'impression que javascript oublie la chaine et recupere l'objet select

  6. #6
    Membre émérite Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Points : 2 953
    Points
    2 953
    Par défaut
    Citation Envoyé par dirty_harry Voir le message
    non je n'y ai rien affecté, nomformu représente une chaine de caractère qui est affecté au name et a l'id d'un select donc j'ai l'impression que javascript oublie la chaine et recupere l'objet select
    C'est faux, crois moi il y a une erreur autre part. Malheureusement, je ne suis pas devin, avec le code que tu nous montres on ne peut rien dire de plus.

    Peux-tu poster un code html/javascript complet, mais réduit au maximum de façon à n'illustrer que ton problème. Sans aucun code de langage serveur.

    Ça nous aiderait à t'aider.

  7. #7
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par franculo_caoulene Voir le message
    crois moi il y a une erreur autre part.
    Oui, à commencer par donner à une variable le nom "form" qui est un mot clé de JavaScript !

    EDIT
    Ensuite,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    form = document.getElementById(nomFormu)
    récupère l'objet HTML correspondant au formulaire ! Tu ne pourras jamais le passer dans une URL

  8. #8
    Membre émérite Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Points : 2 953
    Points
    2 953
    Par défaut
    Citation Envoyé par Bovino Voir le message
    Oui, à commencer par donner à une variable le nom "form" qui est un mot clé de JavaScript !
    +1

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2009
    Messages : 176
    Points : 118
    Points
    118
    Par défaut
    pour éviter le language serveur, voici le code source obtenu sous firefox, le problème c'est que toute l'application a été devellopé en php et que la nécessité de javascript est apparu après:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <td><select name=unit91 id=unit91><option value='€/kW' >'€/kW'</option><option value='€/kW' >'€/kW'</option><option value='' ></option></select><input type="button" value="+" onclick="nvlFenetre(9,2,unit91)" class="adPlus"></td>
    sa c'est la cellule avec le boutons pour apeler la fonction. il y'en a plusieur quasiment identique car c'est un tableau.


    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
     
    function nvlFenetre(numeroVar, NbParam, formulaire)
    {
     
    	if (NbParam >=4)
    	{
    		alert('impossible d\'ajouter des unités');
    	}
    	else
    	{
    		window.open('ajoutUnite.php?variable='+numeroVar+'&nbform='+formulaire, "PopUp",
    		"width=460,height=150,scrollbars=0,location=yes,status=yes, scrollbars=0,left=" +
    		((screen.width - 460)/2) + ",top=" + ((screen.height - 150)/2) );
    	}
     
    }
    et sa c'est ma fonction javascript, les paramatres numerosVar et NbParam marchent très bien.

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2009
    Messages : 176
    Points : 118
    Points
    118
    Par défaut
    mais alors comment faire pour le passer dans l'URL?

  11. #11
    Membre émérite Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Points : 2 953
    Points
    2 953
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="nvlFenetre(9,2,'unit91')"
    FF3 n'accepte pas la syntaxe que tu proposes. IE7, Opera 9.6 et Safari 3 retournent l'objet correspondant.
    Code xhtml : 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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
       <title>passer un id en argument d'une fonction sans guillemets</title>
       <meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
       <style type="text/css">
       </style>
    </head>
    <body>
      <form id="f" method="post" action="p.html">
        <!-- version fausse <input id="s" name="s" type="button" value="submit" onclick="f1(f);" /> -->
        <input id="s" name="s" type="button" value="submit" onclick="f1('f');" />
      </form>
      <div></div>
      <script type="text/javascript">
      function f1(p){
        alert(p);
      }
      </script>
    </body>
    </html>

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2009
    Messages : 176
    Points : 118
    Points
    118
    Par défaut
    Effectivement c'était bien un problème de guillemet. avec les simple quote autour du nom sa marche impec . un grand merci a toi pour tes conseils et pour le temps que tu m'a consacré. tu m'a vraiment été d'un grand secour. Bonne journée.

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

Discussions similaires

  1. souci de conversion des types variables
    Par halil.zakaria dans le forum C++
    Réponses: 11
    Dernier message: 04/02/2013, 00h39
  2. Réponses: 4
    Dernier message: 14/10/2011, 21h17
  3. [VC++] Help! Conversion de types de variables
    Par OverLorD34 dans le forum MFC
    Réponses: 9
    Dernier message: 12/04/2006, 16h34
  4. Réponses: 2
    Dernier message: 05/06/2002, 12h29
  5. [VC++] Help! Conversion de types de variables
    Par OverLorD34 dans le forum MFC
    Réponses: 1
    Dernier message: 02/02/1970, 05h34

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