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

Bibliothèques & Frameworks Discussion :

Ajax et ajout de checkbox ? [MooTools]


Sujet :

Bibliothèques & Frameworks

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    235
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 235
    Par défaut Ajax et ajout de checkbox ?
    Bonjour, je ne connais pas trop la technologie AJAX et je voudrais avoir quelques renseignements :

    Est-il possible de faire une requete SQL en fontion de critères entrés sur une page HTML et d'afficher sur la meme page (sans réactualisation) les résultats de ma requete et des checkbox correspondant a chaque résultats (chaque ligne de ma table trouvée grace a la requete) ??

    Et surtout comment en Javascript on peut ajouter des checkbox a une page HTML ?

    Merci d'avance !

  2. #2
    Membre chevronné Avatar de IP-Fix
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    421
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 421
    Par défaut
    Salut.

    C'est tout a fait possible en ajax de faire cela.

    Pour ajouter une checkbox a ta page web il suffit de faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var id = 'l id de ton select';
    var element = getElementById( id );
    element.innerHtml = '...' // ton code html , par exemple ta checkbox ..
    Pour assurer la compatibilité avec tout les navigateurs (ou du moins le maximum) je te conseil de passer par un framework.

    avec Mootools sa donnerais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var id = 'l id de ton select';
    var element = $( id );
    var comboBox  = new Element('comboBox', {value: '1', text: 'ton texte'});
    element.adopt(comboBox);
    exemple complet :

    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
    <!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>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Document sans nom</title>
    <script src="mootools12.js" type="text/javascript"></script>
    <script type="text/javascript">
    window.addEvent('domready', function() {
    	var id = 'mySelect';
    	var element = $( id );
    	var comboBox  = new Element('option', {value: '1', text: 'ton texte'});
    	element.adopt(comboBox);
    });
    </script>
    </head>
     
    <body>
    <select name="" id="mySelect"></select>
    </body>
    </html>
    Tu rajoute une boucle et le tour est joué
    On aurait pu aussi créer une combo box de maniere dynamique tout aussi facilement

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    235
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 235
    Par défaut
    Merci pour ta réponse, si tu me dis que c'est possible il va falloir que je me penche la dessus alors car je n'ai jamais vraiment programmé en AJAX.

    Juste une autre petite question, tres conne surement mais bon je la pose quand meme

    Quand tu mets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var id = 'l id de ton select';
    var element = getElementById( id );
    element.innerHtml = '...' // ton code html , par exemple ta checkbox ..
    C'est quoi un select ? car moi je connais que le "select" qui sert a faire des listes en HTML, c'est le meme ?

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    Citation Envoyé par Borowsky Voir le message
    C'est quoi un select ? car moi je connais que le "select" qui sert a faire des listes en HTML, c'est le meme ?
    IP-Fix me corrigera quand il se reconnectera si je dis une bêtise sur son code :

    Tu peux remplacer "id du select" par "id du conteneur".
    En effet dans l'exemple donné, tu pointes sur la balise select pour en modifier le contenu (.innerHTML), en l'occurrence les options.
    Si tu dois appliquer le script à des checkbox, tu gardes exactement la même logique, sauf que tu ne vas pas récupérer le résultat dans un select, mais dans un autre type de conteneur (un <div> ou un <p>, par ex.).

    Dans ce cas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var id = 'l id de ton div';
    var element = getElementById( id );
    element.innerHtml = '...' // ton code html , par exemple ta checkbox ..
    A+

  5. #5
    Membre chevronné Avatar de IP-Fix
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    421
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 421
    Par défaut
    oui c'est le même select mais si tu veux tu peux aussi le faire dans une balise div si tu veux comme le suggère E.Bzz

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    235
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 235
    Par défaut
    Merci !

    Cependant je viens d'essayer et Firebug m'indique une erreur sur le "$" de la ligne

    "$ is not defined"... comme si "$" devait etre une variable...

    D'ailleurs je ne comprend pas non plus la présence de ce "$".

    Je vous l'avais dit je suis tout nouveau dans l'AJAX et le Javascript

  7. #7
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par Borowsky Voir le message
    "$ is not defined"... comme si "$" devait etre une variable...
    La fonction $() est implémentée par la librairie d'IP-Fix.

    Tu peux la remplacer par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var element = document.getElementById(id);


    A+

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    235
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 235
    Par défaut
    Ah ok je comprend mieux.

    Je vais continuer à poser des questions sur ce que je veux faire ici au lieu de créer un nouveau post

    j'ai un fichier XML qui contient mes résultats de la requete exécutée en fonction des critères entré par l'utilisateur.
    J'ai ensuite réussi a afficher ca sur ma page HTML grace à vos indications (création de checkbox).

    Cependant un point me chiffone Comment puis-je savoir si mes checkbox sont coché ou non. Car avant, quand je n'utilisais pas d'AJAX, je récupérais mes cases cochées, mais la, comme les checkbox "ne sont pas dans le code source de la page" et qu'elle y sont insérer après le chargement de la page, le code PHP ne les reconnait pu...
    En gros, je ne sais pas quelles cases sont cochées au moment de la validation du formulaire...

    Je sais pas si je suis très clair..

  9. #9
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par Borowsky Voir le message
    Je sais pas si je suis très clair..
    Heuuu ...

    Non

    Par contre, sur le principe, même si le sujet est le même, la question est vraiment différente.

    Aussi, mieux vaut créer un nouveau post (dans lequel tu pourra repréciser tout ça, et eventuellement ajouter un lien vers cette discussion-ci)

    A+

  10. #10
    Membre chevronné Avatar de IP-Fix
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    421
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 421
    Par défaut
    si le formulaires envois un POST alors les valeurs des comboBox sont envoyé, oublie pas de leur attribuer un name et un id lors de leur création en ajax et evidemment il faut qu'elle soit dans la balise <form> de ton formulaire.

    Tu peux te convaincre qu'elles sont receptionné par le php avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
        print "<pre>".print_r($_POST, true)."</pre>";
    ?>
    PS : Pour une meilleur lisibilité du forum n'hesite pas a créer un topic

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    235
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 235
    Par défaut
    Ca répond vite sur ce forum !

    Autant pour moi, pour la dernière question c'est juste que j'avais oublié l'attribut "value"

    En tout cas, ça a l'air de fonctionné sur Firefox, par contre sur IE ...

    Mais ça c'est une autre histoire, ou un autre post...

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

Discussions similaires

  1. Ajouter des Checkbox dans un TlistView
    Par ATTIA dans le forum Composants VCL
    Réponses: 10
    Dernier message: 01/10/2009, 18h41
  2. [JTable] Ajouter un CheckBox
    Par Ticoche dans le forum Composants
    Réponses: 3
    Dernier message: 04/06/2007, 11h58
  3. Ajout de CheckBox dans un panel de manière dynamique
    Par Orian dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 02/04/2007, 10h43
  4. Réponses: 44
    Dernier message: 19/10/2005, 10h54
  5. [VB.NET] Ajouter une CheckBox à un DataGrid
    Par graphicsxp dans le forum Windows Forms
    Réponses: 5
    Dernier message: 31/03/2005, 10h20

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