JSF 生命周期(验证)
我有一个 JSF 页面,其中的元素具有 required=true
和 disabled
属性,我想触发对该特定元素的验证。我所做的是使用
提交它,在 onclick 事件上,我删除了 disabled
属性,但是在页面呈现后,验证错误没有显示。有人知道为什么吗?
<h:inputText id="myInput" required="true" disabled="disabled" />
<h:commandButton id="saveButton" action="#{myBean.saveDetail}">
<script type="text/javascript">
document.getElementById('saveButton').onclick = function() {
document.getElementById('myInput').removeAttribute('disabled');
}
</script>
I have a JSF page with an element which has attribute of required=true
and disabled
, I want to trigger the validation on that specific element. What I did is submitting it using <h:commandButton>
, on the onclick event, I remove the disabled
attribute, but after the page renders the validation error doesnt show up. Anyone knows why?
<h:inputText id="myInput" required="true" disabled="disabled" />
<h:commandButton id="saveButton" action="#{myBean.saveDetail}">
<script type="text/javascript">
document.getElementById('saveButton').onclick = function() {
document.getElementById('myInput').removeAttribute('disabled');
}
</script>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这里有几个问题:
1. inputText 上的disabled 属性应该是布尔值。
2.Disabled属性的意思是:
所以没有验证器会在上面运行。
3.您不能在客户端更改
h:inputText
的disabled属性,如果可以的话,这将是JSF的安全问题。There are a couple of problems here:
1.The disabled attribute should be boolean on the inputText.
2.Disabled attribute means:
So no validators will run on it.
3.You can't change the
h:inputText
's disabled attribute on the client side, it would be a security problem in JSF if you could.