如何用imagined required =“true”来验证h:outputLink的点击?

时间:2016-04-08 15:41:08

标签: jsf hyperlink required

我正在尝试在我的链接中进行验证。当用户单击commandButton而不单击outputLink时,用户会收到错误消息。我正在使用required="true",但它不起作用。

<h:form>
    <h:outputLink value="https://www.google.com/" required="true">test</h:outputLink>
    <h:commandButton value="Submit"    action="#{userTest.test()}"/>
</h:form>

1 个答案:

答案 0 :(得分:1)

将所需的隐藏输入与链接相关联,并通过JS设置其值。

这是一个启动示例,假设隐藏的输入是链接的第一个兄弟。

<h:form>
    <h:outputLink 
        value="http://google.com" 
        target="_blank"
        onclick="this.nextSibling.value=true">test</h:outputLink>
    <h:inputHidden 
        required="true" 
        requiredMessage="You need to click that link!" />
    <h:commandButton value="submit" />
    <h:messages />
</h:form>