我有输入文本,命令链接和注销图像在我的页面。当我在输入文本中使用“必需”时,我的命令链接不起作用。否则效果很好。
这是我的代码:
<p:commandLink action="#{loginForm.logout}">
<p:graphicImage value="images/logout.png" alt="Logout" style="width: 50px;height: 50px;" title="Logout"/>
</p:commandLink>
<p:inputText id="fname" required="true"/>发布于 2013-08-01 12:32:38
默认情况下,命令链接和按钮提交整个表单。在这种情况下,输入字段正在被验证,并给出了一个“这个字段是必需的”验证错误(如果您有一个<p:messages autoUpdate="true">或者对服务器日志有了更多的热爱和关注,您应该注意到这个错误)。
但是,您的注销命令似乎完全独立,所有其他相同形式的输入都与注销命令完全无关。
有几种解决办法,按建议顺序排列:
@form,意思是“整个表单”。只有当一个单独的表单由于某种原因(例如,由于CSS设计不好和/或不熟悉基本的HTML/CSS)而无法选择时才使用这个选项。
immediate属性。
这将绕过所有没有immediate属性的输入。但是,当实际存在需要immediate属性来确定验证优先级的输入时,这可能会失败。发布于 2013-08-01 12:21:07
这是因为该操作在验证阶段被阻塞。将immediate="true"添加到您的commandLink中,它应该可以正常工作。
有关更多信息,请参见这里。
https://stackoverflow.com/questions/17993131
复制相似问题