2010-11-26 4 views

Répondre

2

Eh bien, vous pouvez avoir votre fichier .js comme .jsp, mais avec Content-Type text/javascript (indésirable), ou vous pouvez définir des variables javascript dans votre jsp qui inclut le fichier .js, et transmettre (ou moins souhaitable - utiliser directement) ces variables aux fonctions. Par exemple:

<script type="text/javascript" src="js/scripts.js"></script> 
<input type="button" 
    onclick="someExternalJavascriptFunction('${pageContext.request.foo}')" /> 
+0

Merci pour la réponse. Oui, c'est l'une des solutions. Je me demande si le fichier javascript que j'inclus dans la JSP devrait aussi être traduit pendant la traduction de la page JSP. Cela arrive pour les fonctions javascript qui se trouvent dans le fichier JSP, mais pas pour le fichier JS. – srikanth

+0

le fichier js n'est pas géré par le servlet JSP. Par conséquent, les expressions el ne seront pas évaluées. – Bozho

+1

J'ai résolu cela en changeant le fichier JS en un fichier JSP (util_js.jsp) et en incluant le fichier JSP avec <% @ include file = "util_js.jsp"%> – srikanth

2

Je ne pense pas que vous pouvez utiliser EL dans le fichier javascript lui-même. Vous pourriez utiliser var application_context = $ {pageContext.request.contextPath} dans votre jsp (probablement un fichier layout), alors que le var application_context lui-même peut être défini directement dans le fichier javascript.

+0

Salut Jinesh Merci pour la réponse. Pouvez-vous élaborer un peu plus avec un exemple. – srikanth

+0

sûr. Ci-dessous vos test.js –

+0

Voici votre test.js var application_context = "www.something.com" Votre main.jsp aurait