无法使用onclick

时间:2015-08-07 09:44:08

标签: javascript jquery jsf primefaces

我正在尝试展示一个带有widgetVaronclick的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。

1 个答案:

答案 0 :(得分:3)

ajax="false" p:commandButton虽然未指定引用bean的actionactionListener属性,但会导致此问题。看起来你不需要或不想在服务器上调用任何操作,只需要做一些javascript。在这种情况下,请向type="button"添加p:commandButton

另见