Comment intégrer et appel d'un script javascript dans une RichFaces/JSF page
J'ai été autour de la recherche d'une méthode pour intégrer et appeler des fonctions javascript dans les pages JSF. Je suis également en utilisant RichFaces.
Pour définir la fonction, il semble que je peux le faire dans un cross-navigateur pris en charge la mode:
<a4j:outputPanel ajaxRendered="true">
<f:verbatim>
<script type="text/javascript">
function datum() {
alert("hi");
}
</script>
</f:verbatim>
</a4j:outputPanel>
mais je ne suis pas sûr de savoir comment je peux appeler cette fonction lorsque le chargement de la page afin que le texte qu'elle renvoie est incorporé dans une h:outputPanel
. Le plan est d'avoir un js horloge intégré dans la page qui est servi pour le client. Remarque je ne suis pas en utilisant la balise body, je suis en utilisant facelets ui:composition
, f:view
(core) et RF RI rich:page
.
Grâce
OriginalL'auteur volvox | 2010-06-04
Vous devez vous connecter pour publier un commentaire.
Peu importe quel genre de serveur-côté balises que vous êtes en utilisant, par le temps que votre page est le navigateur qui est tout a disparu et c'est juste du HTML. (Au moins, cela avait mieux être, ou ça ne fonctionne pas de toute façon.) Ce que vous devez faire est de les organiser votre code d'être appelé par une "charge" de gestionnaire d'événements. Il y a différentes façons de le faire, mais le plus simple serait celui-ci:
Maintenant à l'initialisation d'une autre partie de la page, une fois de plus, ce qui compte c'est ce qui se retrouve dans le code HTML. Vous aurez envie de les organiser pour qu'il y ait une sorte de conteneur HTML (un
<div>
ou quelque chose, en fonction de votre conception de page) et vous aurez envie d'avoir un unique attribut "id". Votre Javascript peut alors utiliser le "id" de trouver l'élément et l'ensemble de son contenu:Vous auriez probablement faire ce genre de choses à l'intérieur de la "charge" de la fonction.
Aussi, si vous êtes à l'aide de Facelets au lieu de JSP, qui est basé sur XML vue technologie, vous aurez besoin d'ajouter le XML section CDATA délimiteurs si votre JavaScript contient des commentaires //ou littéraux tels que <, >, &&, etc. Voici l'exemple avec le XML CDATA délimiteurs:
Vous pouvez voir une explication approfondie de quand utiliser CDATA ici. Vous n'avez pas besoin de ces si vous êtes à la création de pages HTML5.
Bon codage!
Oh, aussi, un avertissement (probablement évident) - dès que vous avez besoin de deux, les choses à être appelé à la "charge" de temps (de l'esp. quand ils sont indépendants de code côté serveur des unités de), vous allez vouloir un amateur de configuration pour la gestion de ces fonctions de gestionnaire. C'est là que les différents frameworks Javascript commencent à être d'une grande aide.
Comme pour Facelets, voir aussi cette réponse: Erreur d'Analyse /de la page.xhtml: Le contenu des éléments doit être composée de la bien formé données de caractère ou de balisage. Quant à votre extrapolation abusive de XHTML qui j'ai édité loin, voir cette réponse: Quel est le besoin pour le XHTML?
eh bien, je suis flatté que vous feriez l'honneur de ma "frisson" comme étant suffisamment importante pour être considérée comme une "extrapolation abusive" 🙂 je ne vais pas nier le fait qu'un frisson est ma réponse réelle réflexion sur le XHTML, mais je suis complètement d'accord avec les points que vous faites dans cet autre réponse.
Juste assez. Désolé, juste fatigué de voir XHTML être overhyped/overgeneralized par de mauvaises gens 🙂
OriginalL'auteur Pointy