我需要在image1和imange2之间切换图像。另外,我需要在myBean中调用一个函数(单击鼠标)。我尝试使用以下代码,但它没有做任何事情,图像无法点击?
<h:graphicImage name="images/image1.png" action="#{myBean.toggleImage}" onclick="images/image2.png"/>
public void toggleImage() {
// System.out.println();
}
答案 0 :(得分:0)
您可以通过两种方式显示图像。
您可以使用name属性和library属性。在这种情况下,JSF在images文件夹中查找图像。
<h:graphicImage name="image1.png" library="images"/>
您直接提及图片名称。
<h:graphicImage value="/images/image1.png"/>
onclick属性是DHTML偶数属性。您需要使用该属性调用脚本函数。你不能在那里使用图像路径。
您可以使用以下代码完成所需。
<h:commandLink action="#{bean.toggleImage}">
<h:graphicImage value="{bean.image}"/>
</h:commandLink>
您可以使用image1在bean中设置图像变量,因此页面会加载image1。单击图像时,调用bean中的方法,将image1的值更改为image2。