|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : octobre 2010 Messages : 7 ![]() |
Bonjour à tous, ami(e)(s) lecteur(s) !
Si je viens vers vous aujourd'hui, c'est pour exposer un problème que je n'arrive pas à comprendre... Je développe un appli J2EE, avec côté client, des pages JSF. J'ai quelques balises <script language="Javascript">...</script> qui me permettent de réaliser quelques traitement. Tout fonctionne sans soucis avec Firefox. Mais sous IE (6, 7 et 8), j'ai un problème. Il n'y a aucune de mes fonctions qui fonctionnent et j'ai le droit au script error d'IE : Objet attendu. Après avoir regarder le code source de la page, je me suis rendu compte qu'IE avait rajouter le tag defer dans toutes les balises scripts de la page. Quelques recherche plus tard, j'apprends que ce tag "defer" permet d'exécuter le JS après que la page soit charger... Du coup, c'est normal que rien ne fonctionne car l'import des librairies JSF et Richfaces, se fait à l'aide des balises script (exemple: <script defer type="text/javascript">window.RICH_FACES_EXTENDED_SKINNING_ON=true;</script>) Il faut que ces import se fassent au chargement de la page, et pas après. Bref, il me faut une solution pour qu'IE ne rajoute pas le tag "defer" dans mes balises <script>... Pourquoi ce tag "defer" s'insère sournoisement dans mes balises script ? Il doit bien avoir une explication et une solution, merci de m'éclairer avec vos lumière ! Je précise tout de même que j'ai déjà utilisé ses technos là pour développer des applis, et je n'ai jamais eu ce problème auparavant :-/ |
|
|
00
|
|
|
#2 | |
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 572 ![]() |
Citation:
Montre-nous une JSP, et son code généré sous FF et IE pour comparaison
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
|
|
|
00
|
|
|
#3 | ||||||
|
Invité de passage
![]() Inscription : octobre 2010 Messages : 7 ![]() |
Ci-tôt dis, ci-tôt fait
Voici une page JSF toute simple, un formulaire avec deux champs. Code :
Voici l'interprétation de Firefox : Code :
Maintenant, voici l'interprétation d'IE (7) : Code :
|
||||||
|
|
00
|
|
|
#4 | ||||
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 572 ![]() |
Effectivement j'ai fait un test sur une page minimale
Code html :
Code html :
Donc on peut supposer que le defer n'était pas présent dans le source fourni à FF... Mais qu'est-ce que tu nous fais encore, IE ?
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
||||
|
|
00
|
|
|
#5 | ||
|
Invité de passage
![]() Inscription : octobre 2010 Messages : 7 ![]() |
IE se rit bien de nous
Et pour le test, j'ai rajouter dans ma JSF le tag "defer" à false pour forcer IE à ne pas interpréter ce fichu tag. Le résultat interprété par IE ma laissé sans voix : Code :
|
||
|
|
00
|
|
|
#6 |
![]() ![]() Daniel HagnoulÉtudiant perpétuel Inscription : février 2009 Messages : 3 221 ![]() |
__________________
FAQ jQuery Mon cahier d’exercices sur jQuery & CoSi un message vous a aidé ou vous semble pertinent, votez pour lui ! ![]() |
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : octobre 2010 Messages : 7 ![]() |
Bonjour danielhagnoul,
Merci pour ce lien, et effectivement on apprend des choses intéressantes sur ce tag. D'ailleurs, j'avais déjà lu cette doc. Mais en fait, je cherche un moyen de virer ce tag, purement et simplement de l'interprétation IE. Il n'a rien à faire là... [Edit 17:22] (re)Bonjour, J'ai finalement trouvé la solution à mon soucis, merci à tous ceux qui ont essayé de m'aider à le résoudre. Voici le soucis : ma page JSF s'affiche dans mon browser suite a une redirection AJAX. Or, il apparaît qu'une redirection AJAX interprète à sa sauce une page html. C'est pourquoi j'avais le droit au tag "defer" dans toutes mes balises <script>. Du coup, tout mon JS se chargeais dans n'importe quel ordre, ce qui faisais planter mes méthodes JS. La solution : remplacer la redirection AJAX (a4j:commandButton) par une redirection normal (h:commandButton). Pour une redirection sans passage de paramètres, ça fonctionne. Mon problème a été résolue. Une fois de plus, merci. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com