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 :

retour d'ajax et sélecteurs pour attribution des éléments


Sujet :

jQuery

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut retour d'ajax et sélecteurs pour attribution des éléments
    Bonjour,

    Voila, j'ai un formulaire :

    Code html : 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
    <form action= "/run_DHM/" method="POST">
     
    <td class= "driv" width="160"  <TT><INPUT type="text" 
    value="{{prop.val_champ}}" id= "driver" name="propriete" /></TT>
     
    </td>
    <td width="120"<TT><select name="temperature" id= "temp"></TT>
    <optgroup label="degres">
    <option selected="selected" value="0">-- select --</option>
    <option value="100">100</option>
    <option value="200">200</option>
    <option value="300">300</option>
    <option value="400">400</option>
    <option value="500">500</option>
    </optgroup>
    </select> 
    </td>
     
     
    <td class= "min" width="120"  <TT> {{prop.val1}}</TT> </td>    
    <td class= "max" width="120"  <TT> {{prop.val2}}</TT> </td>
    <td width="120" <TT> {{ prop.val_unit }} </TT></td>
     
    <td class= "maref" width="160"  <TT><INPUT type="text" value= "{{ object }}"  id= "reference" name="reference"/></TT></td>
     
    </form>

    Je désire envoyer le paramétrage propriete, temperature, reference avec getjson.

    J'ai donc le script :

    Code javascript : 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
    <script>
     
            $(document).ready(function() {
     
            $("#driver").click(function() {
     
            $.getJSON("/run_DHM/", {'temperature': $("#temp").val(), 'propriete': $("#driver").val(), 'reference': $("#reference").val() },  function(data) {
     
    	$("td.min").html(data['val_min']);
            $("td.max").html(data['val_max']);
     
     
              });
            });
         });
     
    </script>

    Le problème est que ça ne marche que si j'ai une seule propriéte.
    De plus, ça renvoie les data à tous les champs val_min et val_max des autres propriétés.

    Je ne comprends pas trop...

  2. #2
    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 : 53
    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
    La première chose, c'est que ton code HTML est pas terrible...
    • La balise <form> doit être soit en dehors de la balise <table> soit dans un <td>.
    • Les balises <td> sont mal écrites ! Tu mets uniquement <td sans le chevron fermant !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    Je ne comprends pas. Ils y sont les chevrons fermant des td ! C'est où ?

    Je sais pour le form et la table. Le problème ne vient pas de là...

  4. #4
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Bonjour,

    Hé bien ici par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <td class= "min" width="120"  <TT> {{prop.val1}}</TT> </td>
    Nous avons bien une ouverture de balise <td /*propriétés*/ mais pas le caractère qui ferme l'ouverture : > afin d'obtenir un tag du style : <td /*propriétés*/ >.
    Par contre, comme vous le dites, il y a bien le tag de fermeture </td>.

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 672
    Points
    66 672
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Je désire envoyer le paramétrage propriete, temperature, reference avec getjson.
    envoyer ou recevoir ?
    je ne comprends pas trop l'envoi / reception dans ton truc ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    les parametres envoyes servent a ouvrir un fichier excel portant le nom de la propriete ceci etant fait par une fonction de django (module views.py)
    les infos val_min et val_max sont determinées a partir de la temperature de selection

  7. #7
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 672
    Points
    66 672
    Billets dans le blog
    1
    Par défaut
    ton json en retour à quelle tête ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    datas = {'val_min': val_min, 'val_max': val_max}                                
     
        data= simplejson.dumps(datas)
     
        return HttpResponse(data, mimetype= 'application/json')

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 672
    Points
    66 672
    Billets dans le blog
    1
    Par défaut
    dans la console firebug ..; tu le vois le retour ?


    sinon essaye

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    datas = {"val_min": val_min, "val_max": val_max}
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    Bien sur, j'ai le retour.

    D'autre part, ce code marche très bien lorsqu'il n'y a qu'une propriété, une valeur min et une valeur max.
    Le problème vient des sélecteurs qui sont bien appropries dans le cas simple et pas du tout dans l'autre cas.

  11. #11
    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 : 53
    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
    Le problème est que ça ne marche que si j'ai une seule propriéte.
    Tu parles de quoi là exactement ?
    A tout hasard, il y a combien d'élément ayant l'id "driver" dans ta page ?
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  12. #12
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 672
    Points
    66 672
    Billets dans le blog
    1
    Par défaut
    si tu as plusieurs valeurs en retour ...
    ton json devrait plutot ressembler à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    datas = {"id1":{"val_min": val_min, "val_max": val_max}, "id2":{"val_min": val_min, "val_max": val_max} }
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    J'ai quatre éléments (il pourrait y en avoir cinquante).
    Ils correspondent a value="{{prop.val_champ}}".
    Ce sont des champs text (durete Vickers___, module de Young__, ...).

    Les champs ont été crées dans l'admin de django.

    Le problème vient de jquery et ajax, pas de django.

  14. #14
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    certainement pas pour le retour !!

    j'ai verifié que je recupere la totalite du fichier

Discussions similaires

  1. [ZF 1.10] Ajax et Zend pour mettre des données à jour d'un tableau
    Par absot dans le forum Zend Framework
    Réponses: 1
    Dernier message: 12/10/2011, 12h03
  2. Réponses: 1
    Dernier message: 18/01/2011, 13h27
  3. [E - 07] Aide sur les attributs des éléments du ruban
    Par conconbrr dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 05/01/2009, 18h29
  4. [SimpleXML] Lire les attributs des éléments
    Par van-bom dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 12/09/2008, 23h36
  5. Pb pour positionner des éléments
    Par cissou06 dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 03/07/2007, 18h55

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