我正在尝试展示一个带有widgetVar
和onclick
的p:面板,但它只显示为瞬间。然后它再次隐藏。
当它再次隐藏时,我在浏览器开发控制台中收到以下错误消息:
Uncaught TypeError: Cannot read property 'val' of undefined
错误也只会瞬间出现。
这是我的.xhtml页面:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns ="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:head>
<h:outputStylesheet library="css" name="style.css" />
<h:outputScript name="jquery/jquery.js" library="primefaces"/>
</h:head>
<h:body>
<h:form>
<p:commandButton value="testbutton" ajax="false" onclick="PF('panelwv').show();" />
<p:panel widgetVar="panelwv" visible="false" toggleable="true">
<h:outputText value="Test" />
</p:panel>
</h:form>
</h:body>
</html>
我正在使用Primefaces 5.2。
答案 0 :(得分:3)
ajax="false"
p:commandButton
虽然未指定引用bean的action
或actionListener
属性,但会导致此问题。看起来你不需要或不想在服务器上调用任何操作,只需要做一些javascript。在这种情况下,请向type="button"
添加p:commandButton
。
另见: