jsf - 单击链接时不要重新加载页面

标签 jsf

我有一个包含链接图像的设计。 它们必须像选择组件一样工作,例如,当我单击一个链接时,我在背面控制选择哪个链接。 用户想要提交他/她的更改后,他/她单击提交按钮并保存选择。

所以我需要一个 h:blahblah 组件来获取选择,当用户单击它时,它不会重新加载页面,并且可能再次单击以取消选择,也可能再次单击以再次选择。

我需要 h: 组件,因为我可以轻松地仅更改它们的 css。

如果您分享关于我如何才能完成这项工作的建议,我也将很高兴。

谢谢

<小时/>

已解决由我的同事

<h:outputLink value="javascript:void(0);"><p:ajax event="click"  
                    listener="#{beanView.method()}"/>My Link</h:outputLink>

最佳答案

您可以使用<f:ajax>@ViewScoped 结合使用用于此目的的托管 bean。让listener<f:ajax>设置所选图像值。你可以直接嵌套<f:ajax>里面<h:graphicImage> .

<h:form>
    <h:graphicImage name="image1.png">
        <f:ajax event="click" listener="#{bean.setSelectedImage('image1')}" />
    </h:graphicImage>
    <h:graphicImage name="image2.png">
        <f:ajax event="click" listener="#{bean.setSelectedImage('image2')}" />
    </h:graphicImage>
    <h:graphicImage name="image3.png">
        <f:ajax event="click" listener="#{bean.setSelectedImage('image3')}" />
    </h:graphicImage>
    <h:commandButton value="Submit" action="#{bean.submit}" />
</h:form>

@ManagedBean
@ViewScoped
public class Bean {

    private String selectedImage;

    public void submit() {
        System.out.println(selectedImage);
    }

    // ...
}

关于jsf - 单击链接时不要重新加载页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8907569/

相关文章:

java - 中断 JSF Ajax 请求

css - 在 JSF 2.0 中从 CSS 资源中加载图像

java - Primefaces 数据表中的样式 ENUM

jsf - p :message Not displaying in p:dialog

java - 为什么表单提交不起作用?

全局过滤器的 JSF Primefaces 数据表匹配模式(不是单个列)

java - java中动态压缩和下载zip文件

JSF2 - javax.el.PropertyNotFoundException。不使用方法

java - 尝试实现 Primefaces 示例时出错

java - 可用的 JSF MVC 组件