2010-06-17 3 views
1
ClientScript.RegisterStartupScript(
    this.GetType(), 
    "ReturnScript", 
    "<script language='javascript'> alert('" + ErrorMsg + "');</script>"); 

autre en Java (JSF)Comment appeler javascript de jsf backingbean

+0

Soit je ne l'ai pas eu assez de café encore, ou c'est un jour de bannière pour des questions vagues, inintelligibles. – Pointy

+1

@Pointy: cet exemple de code provient du monde ASP.NET. Il demande un équivalent JSF. – BalusC

Répondre

5

imprimer uniquement le code JS en l'état dans la vue JSF. Le JS s'exécute sur la machine client, pas sur la machine du serveur. Vous pouvez utiliser <h:outputText> pour cela.

<h:outputText value="<script>alert('foo');</script>" escape="false" /> 

Vous pouvez même obtenir comme une propriété de haricot:

<h:outputText value="#{bean.script}" escape="false" /> 

Le escape="false" est là pour empêcher le HTML-escaping (par défaut) de la valeur.

Voir aussi:

+0

Salut, j'ai appliqué votre solution. Dans mon cas, il montre cette erreur - Error Analysis /viewMetadata/DynamicCss.xhtml: Error Traced [ligne: 28] La valeur de l'attribut "value" associé à un type d'élément "null" ne doit pas contenir le caractère '<'. –

+1

@Kush: cela se produira en effet si vous utilisez Facelets au lieu de JSP. Juste échapper manuellement. Voir aussi par ex. http://stackoverflow.com/questions/6883860/how-to-insert-special-characters-like-and-into-jsf-components-value-attribu/6883872#6883872 – BalusC

Questions connexes