[英]Avoid validating/ submitting p:selectOneListbox's value completely
我正在通过使用请求范围内的bean的ajax获取p:selectOneListbox
selectItems列表。 因此,在提交表单后,我得到了这个错误:
j_idt153:j_idt159:j_idt184:j_idt194: Validation Error: Value is not valid
我不想将p:selectOneListbox
的值提交给任何bean属性,这就是为什么省略了该组件的值EL的原因,但JSF仍在验证所选的选项,并且由于我的bean被请求了作用域,所以它不存在。 现在,我想完全跳过对该组件的验证,因为此p:selectOneListbox
仅用于演示目的,并且在提交表单过程之后不使用其值。 如何避免完全验证/提交p:selectOneListbox
的值
<p:ajax event=".." listener="#{pim.retrieveProjects()}" update="usrProjctsList" />
<p:selectOneListbox id="usrProjctsList" onchange="jsfElmnt('#{cc.clientId}:selUsrProjct').val($(this).val());">
<f:selectItems value="#{pim.projects}" var="project" itemLabel="#{project.title}" itemValue="#{project.id}"/>
</p:selectOneListbox>
<h:inputHidden id="selUsrProjct" value="#{bean.underProject}"/>
我不认为错误j_idt153:j_idt159:j_idt184:j_idt194: Validation Error: Value is not valid
引用<p:selectOneListbox id="usrProjctsList"
j_idt153:j_idt159:j_idt184:j_idt194: Validation Error: Value is not valid
导致其id
不存在于j_idt153:j_idt159:j_idt184:j_idt194
ID中所有...
在浏览器中view source
并查找j_idt153:j_idt159:j_idt184:j_idt194
id并尝试找出它属于谁
你也可以尝试添加immediate="true"
到你的<p:ajax
跳过验证或尝试加入<p:ajax
到麻烦的组件j_idt153:j_idt159:j_idt184:j_idt194
正如Daniel所说,该ID也不匹配。 但是,为了跳过验证,您还可以在ajax事件中使用process=@this (and other stuff, except the listBox)
。 由于您使用的是素数,这只会处理此处写的内容,而忽略其余内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.