Partage
  • Partager sur Facebook
  • Partager sur Twitter

[jQuery]Lancer une boite de dialog depuis php

Sujet résolu
    12 août 2009 à 14:43:26

    Bonjour,

    J'aimerai savoir comment lancer une boite de dialog jQuery depuis php.
    D'habitude je fais un bouton avec un ID puis dans le js :

    jQuery('#btcreategrp').click(function() {
        jQuery("#dialog_new_grp").dialog('open');
      });
    


    La page php est une page que j'inclue dans une div via ajax avec prototype.

    D'habitude je fait dans ces cas la :
    echo '<img src="error" onerror="ma_function_js();" />';
    


    Mais la je sais vraiment pas comment :(

    Quelqu'un peut il m'aider ? Merci d'avance :)
    • Partager sur Facebook
    • Partager sur Twitter
      12 août 2009 à 16:19:11

      Citation

      J'aimerai savoir comment lancer une boite de dialog jQuery depuis php.


      Impossible, puisque le php s'exécute sur le serveur, et le JS chez le client. Les évènements de l'utilisateur ne se répercuterons jamais dans ton PHP.

      Qui plus est mélanger jQuery et prototype je ne suis pas convaincu que ça soit efficace :)

      Enfin je ne suis pas sûr d'avoir compris le problème tu ne pourrais pas nous expliquer précisément ce que tu veux faire (avec quelques morceaux de codes si possible :))
      • Partager sur Facebook
      • Partager sur Twitter
        12 août 2009 à 16:25:19

        Je peux executer du code coté client en faisant "echo '';"

        Le souci, c'est que je n'arrive pas.

        "jQuery("#dialog_new_grp").dialog('open');"
        


        Ca ne marche pas, il me faudrait un truc qui ouvre une boite de dialog sans passer par une solution du type :

        jQuery('#btcreategrp').click(function() {
            jQuery("#dialog_new_grp").dialog('open');
          });
        

        • Partager sur Facebook
        • Partager sur Twitter
          12 août 2009 à 19:08:04

          Tu veux ouvrir une boîte de dialogue au chargement de la page ?

          $(function() {
          	$('#dialog_new_grp').dialoq('open');
          	});
          


          -je sais pas si c'est moi mais je ne comprends aucun problème aujourd'hui :(-
          • Partager sur Facebook
          • Partager sur Twitter
            12 août 2009 à 19:40:06

            Non.
            Enfait, je veux recharger une DIV.
            Suivant ce que donne la page php, ce qu'elle trouve, donc si quelque chose, on fait sa, sinon, on fait sa et on affiche une boite de dialog.
            • Partager sur Facebook
            • Partager sur Twitter
              12 août 2009 à 19:43:57

              Bah :

              <?php
              	if($taConditionsEstRemplie)
              	{?>
              		<script type="text/javascript">
              		$('#dialog_new_grp').dialog('open');
              		</script>
              	<?php}
              ?>
              


              ???

              • Partager sur Facebook
              • Partager sur Twitter
                12 août 2009 à 20:52:43

                ça ne marche pas...
                ça ne marche que dans :

                <script type="text/javascript">
                var id_groupe = 0;
                $(function() {
                
                		jQuery("#dialog_new_grp").dialog({
                			bgiframe: true,
                			resizable: false,
                			autoOpen: false,
                			width: 450,
                			modal: true,
                			draggable: false,
                			buttons: {
                				'Annuler': function() {
                					jQuery(this).dialog('close');
                				},
                				'Créer le groupe': function() {
                					var bValid = true;
                					allFields.removeClass('ui-state-error');
                
                					bValid = bValid && checkLength(name,"",3,30);
                					
                					if (bValid) {
                						mk_new_grp(name.val());
                						jQuery(this).dialog('close');
                						window.location='index.php?page=contact_membre';
                					}
                				}
                			},
                			close: function() {
                				allFields.val('').removeClass('ui-state-error');
                			}
                		});
                
                });
                </script>
                
                • Partager sur Facebook
                • Partager sur Twitter
                  13 août 2009 à 1:18:16

                  Mais tu peux écrire le JS avec PHP comme l'a montré cerium non ? o_O

                  Fais juste attention aux quotes/double-quotes ;)

                  • Partager sur Facebook
                  • Partager sur Twitter
                    13 août 2009 à 12:46:36

                    Bah non,
                    "$('#dialog_new_grp').dialog('open');"
                    ça ne marche pas.

                    j'ai mis :
                    echo '
                    		<script type="text/javascript">
                    		$(\'#dialog_new_grp\').dialog(\'open\');
                    		</script>
                    		';
                    


                    et ça ne fonctionne pas...
                    • Partager sur Facebook
                    • Partager sur Twitter
                      13 août 2009 à 13:00:03

                      Regarde le code HTML généré, tu verras bien s'il y a une erreur.

                      Là, ça pourrait être dû au fait que l'élément "#dialog_new_grp" n'est pas encore chargé.

                      T'as essayé comme ça ?

                      $(function() {
                        $("#dialog_new_grp").dialog("open");
                      });
                      
                      • Partager sur Facebook
                      • Partager sur Twitter
                        13 août 2009 à 13:50:15

                        Nan, ça marche pas aussi =S
                        • Partager sur Facebook
                        • Partager sur Twitter
                          13 août 2009 à 14:26:00

                          Citation : Golmote

                          Regarde le code HTML généré, tu verras bien s'il y a une erreur.



                          Tu peux aussi le poster ici.
                          • Partager sur Facebook
                          • Partager sur Twitter
                            13 août 2009 à 15:05:50

                            voilà ce que cela génére :
                            <script type="text/javascript">
                            		$(function() {
                            		  jQuery("#dialog_new_grp").dialog("open");
                            		});
                            		</script>
                            
                            • Partager sur Facebook
                            • Partager sur Twitter
                              13 août 2009 à 16:21:46

                              Et ta dialog, tu l'as initialisé avant ?

                              Autrement dit, montre tout ton code HTML généré ;)
                              • Partager sur Facebook
                              • Partager sur Twitter
                                13 août 2009 à 16:37:27

                                Bah, c'est lui le code généré, dans ma div.
                                Enfaite j'ai ma page qui est généré.
                                Puis une page PHP se génère dans une div.
                                Et c'est là qu'il faut que j'appelle ma boite de dialog.
                                Et oui la boite est déjà initialisé avant et elle fonctionne, j'ai testé.
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  13 août 2009 à 17:09:11

                                  Et ton appel (Ajax je suppose), il ressemble à quoi ?
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    13 août 2009 à 17:23:26

                                    Voici l'appelle (avec prototype) :

                                    function rm_grp(name)
                                    {
                                      new Ajax.Updater( 'actualiser_ajax', './functions_ajax/rm_grp.php?grp='+name);
                                    }
                                    


                                    La div "actualiser_ajax" est cachée (style="display:none;").
                                    Tout marche d'habitude, et la aussi, mais pas avec jQuery.
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      13 août 2009 à 18:41:52

                                      Essaie comme ceci :

                                      function rm_grp(name)
                                      {
                                        new Ajax.Updater( 'actualiser_ajax', './functions_ajax/rm_grp.php?grp='+name,{evalScripts:true} );
                                      }
                                      
                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        13 août 2009 à 18:44:55

                                        Marche pas aussi =S

                                        _________________________________________________


                                        Réussi !!!

                                        Vu que j'ai prototype et jQuery, il faut mettre :
                                        <script type="text/javascript">
                                        jQuery(function() {
                                            jQuery("#dialog_new_grp").dialog(\'open\');
                                        });
                                        </script>
                                        


                                        Merci beaucoup de ton aide :)
                                        • Partager sur Facebook
                                        • Partager sur Twitter

                                        [jQuery]Lancer une boite de dialog depuis php

                                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                        • Editeur
                                        • Markdown