有没有办法让JSF评估包含JavaScript语言的表达式语言(EL)表达式?
我希望Seam可以解决这个问题,但是到目前为止还没有运气。我想要的是能够在我的JavaScript函数中使用跨页面共享的本地化消息。
五种方式:
<script type="text/javascript" src="script.js"></script>
或者,如果它已经是JSON格式。
<script type="text/javascript" src="script.js"></script> <script type="text/javascript">var messages = #{bean.messagesAsJson};</script>
将整个内容<script>放在XHTML文件中,并ui:include用来包含它。
<script>
ui:include
通*.js过JspServlet(只有当它足以只评价${}表达式)。例如,在web.xml(对<servlet-name>中JspServlet可以发现web.xml有问题的servletcontainer的,它通常是jsp)。
*.js
JspServlet
${}
web.xml
<servlet-name>
jsp
<servlet-mapping> <servlet-name>jsp</servlet-name> <url-pattern>*.js</url-pattern>
利用修改后的内容类型使用“旧版本” JSP。重命名script.js为script.jspJSP并将以下行添加到JSP的顶部(仅在足以仅计算${}表达式的情况下):
script.js
script.jsp
<%@page contentType="text/javascript" %>
让JS在加载过程中ajaxally获取数据。这是一个针对jQuery的示例。
$.getJSON('json/messages', function(messages) { $.each(messages, function(key, value) { $.messages[key] = value; });
});