如下从JSF组件调用JavaScript似乎是错误的。你能告诉我为什么吗?
<ui:define name="javascript">
<script type="text/javascript">
function myFunction( message ){
alert( message);
}
</script>
</ui:define>
<h:commandButton id="bas" value="bas"
onclick=" myFunction('call js Function'); " />
答案 0 :(得分:1)
有两件事“不对”:
您需要将JS代码放在自己的JS文件中并使用<script src="js/foo.js"></script>
。 JS语言包含在基于XHTML的视图技术(例如Facelets,例如Facelets)中非法的运算符。 <
,>
,&
等等。您需要将它们转义或将其包装在一个简单难看的CDATA块中。
如果您使用的是JSF 2.0,则应使用<h:outputScript>
代替<ui:define>
<script>
。
<h:outputScript library="js" name="foo.js" />
<h:commandButton id="bas" value="bas" onclick="myFunction('call js Function');" />