Plutôt qu'un "display: none" qui ajoutera quand même l'objet dans le code de la page, appeller juste input_date_tag sans faire de echo permet de charger les libs sans rien ajouter sur la page. C'est "un peu" plus propre.
Sinon, un autre problème qui peut subvenir, c'est que le Javascript soit désactivé dans les pages Ajax (c'est une fonction par défaut de Prototype/Script.aculo.us). La solution est d'ajouter l'option "script"=>true parmis les options Ajax. On 30 nov, 08:54, sojiro <[EMAIL PROTECTED]> wrote: > Bonjour, > > Je ne sais pas si cela pourra t'aider mais pour ma part j'ai eu à > faire à un même type de soucis et j'ai fais une manip (pas forcément > très jolie) qui consiste à faire un appel à un input_date_tag dès le > chargement de la page, celui-ci étant en display:none. Cela permet à > Sf de charger les librairies et css dès le chargement de la page et > ainsi lors de mes appels AJAX plus bas dans la navigation au sein de > la page, le calendrier est donc bien affiché. Je sais que ce n'est pas > très propre mais par défaut et manque de temps cette solution me > convient. > > Cdlt, > > Thomas > > On 29 nov, 19:07, "Mathieu Sachot" <[EMAIL PROTECTED]> wrote: > > > Tout d'abord, merci d'avoir pris un peu de temps pour se pencher sur mon > > problème. Malheureusement, il ne semble pas que cela vienne de ce point là. > > > Pour clarifier un peu : > > > J'ai ma page A. De ma page A, j'appelle en ajax une page B dont le > > résultat est affichée dans la page A. Et de ma page B, j'appele une page C, > > qui est elle aussi affichée dans la page A. Et de la page C, je fais appel > > au Calendar. > > > Dans la page principale, j'ai inclus la librairie javascript prototype via > > le fichier view.yml : > > javascripts: [http://[...]/web/js/prototype.js] > > > C'est amplement suffisant puisque quand je charge la page toute seule, le > > calendrier fonctionne. > > > J'ai donc, suite au message d'erreur, essayé d'inclure le fichier prototype > > manuellement dans la page B et C avec une balise script avec chemin en dur : > > <script language="Javascript" src=" > > http://[...]/web/js/prototype.js"></script> > > > Échec. > > > J'ai trouvé alors les trois fichiers sources js de calendar, et j'ai > > retenté. Échec aussi. Je suis même allé jusqu'à introduire manuellement > > l'appel du script dans la page C : > > > <script language="Javascript"> > > Calendar.setup = function (params) { > > [...]} > > > </script> > > [...] > > <?php echo input_date_tag([...]); ?> > > > Bref, je commence a être à court d'idées... > > > Le 29/11/07, noel guilbert <[EMAIL PROTECTED]> a écrit : > > > > Bonjour, > > > > Cela est du au fait que les js pour le Calendar ne sont pas chargés au > > > chargement de ta page (normal, tu n'as pas fait appel au input_date_tag, > > > donc pas d'inclusion des js). Du coup, lorsque tu recupéres ton calendrier > > > via ton appel ajax, et que le javascript s'execute, il te manque les > > > scripts. > > > > Les solutions possibles sont soit d'inclure toi meme les js au chargement > > > initial de ta page, soit d'ajouter les tags scripts dans ton retour ajax > > > avec un javascript_include_tag (pas sûr que ça marche). > > > > On Nov 29, 2007 9:15 AM, Mathieu Sachot <[EMAIL PROTECTED]> wrote: > > > > > Bonjour, > > > > > Je me heurte actuellement à un problème plus du niveau javascript que > > > > php, mais je m'adresse à vous de par votre experience de l'utilisation > > > > de > > > > symfony, et probablement du framework prototype par la même occasion. > > > > > J'ai construit une page, de telle sorte que le contenu s'affiche au fur > > > > et à mesure des choix de l'utilisateur. Pour ce faire, j'utilise la > > > > technologie ajax (avec un joli observe_field). Chaque choix fait > > > > apparaitre > > > > un nouveau panneau en fonction des informations fournies par > > > > l'utilisateur. Et dans un des nouveaux panneaux, je souhaiterais > > > > afficher un > > > > calendrier comme le propose prototype ( j'utilise input_date_tag). Sauf > > > > que > > > > lorsque je charge la page, firebug & ie m'indiquent que Calendar n'est > > > > pas > > > > définit. > > > > > Avez-vous déjà rencontré ce problème ? > > > > > Mathieu > > > > -- > > > Noël GUILBERT > > >http://www.sensiolabs.com > > >http://www.symfony-project.com > > > Sensio Labs > > > Tél: +33 1 40 99 80 80 --~--~---------~--~----~------------~-------~--~----~ Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr" de Google Groupes. Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse [email protected] Pour résilier votre abonnement à ce groupe, envoyez un e-mail à l'adresse [EMAIL PROTECTED] Pour afficher d'autres options, visitez ce groupe à l'adresse http://groups.google.com/group/symfony-fr?hl=fr -~----------~----~----~----~------~----~------~--~---
