Primefaces BlockUI无法正常工作

时间:2014-02-14 08:37:01

标签: javascript jsf jsf-2 primefaces blockui

在我的JSF表单中,我正在使用BlockUI在处理时显示忙碌状态。它工作正常,直到我将javascript添加到标题。使用脚本标记,BlockUI根本不显示。我该如何解决这个问题?以下是我的表格,其中包含阻止了UIUI的javascripts。我在Glassfish 3.2.2和firefox浏览器中使用JSF 2.2,Primefaces 3.4.2。

<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:p="http://primefaces.org/ui">
    <h:head>
        <title>TODO supply a title</title>
        <meta name="viewport" content="width=device-width"/>
        <script src="js/jquery.min.js"></script>
        <script src="js/classie.js"></script>
        <script src="js/menu.js"></script>               
        <script type="text/javascript">
            $(function() {
                $('#da-slider').cslider({
                    autoplay: true,
                    bgincrement: 450
                });
            });
        </script>
    </h:head>
    <h:body>
        <h:form id="registration"> 
            <h1> Sign up </h1> 
            <p:growl id="growl" showDetail="true" /> 
            <p:dialog header="Error registering user" widgetVar="dlg" resizable="false"/>
            <p:messages id="messages" autoUpdate="true" closable="true"/>
            <p:panel id="panel">
                <h:panelGrid id="grid" columns="2" cellpadding="4">  
                    <p:outputLabel for="username" value="Username:" />
                    <p:inputText id= "username" value="#{userBean.userId}" required="true">                      
                    </p:inputText>                 
                    <p:outputLabel for= "firstname" value="First Name: " />
                    <p:inputText id="firstname" value="#{userBean.firstName}" required="true"/>                   
                    <p:outputLabel for= "lastname" value="Last Name: " />
                    <p:inputText id= "lastname" value="#{userBean.lastName}" required="true"/>
                    <p:outputLabel for= "email" value="Email Address: " />
                    <p:inputText id= "email" value="#{userBean.email}" required="true"
                                 validatorMessage="Invalid email format" >
                    </p:inputText>
                    <p:outputLabel for= "organisation" value="Organisation:" />
                    <p:inputText id="organisation" value="#{userBean.organisation}" required="true"/>
                </h:panelGrid>
            </p:panel>
            <p class="signin button">
                <p:commandButton id="saveButton" value="Proceed" actionListener="#{userBean.createUser()}" onclick="#{userBean.validateForm()}" update="registration:panel @this"/>
                <p:commandButton value="Reset" update="registration:panel" process="@this" actionListener="#{userBean.resetButton()}"/>
            </p> 
            <p:blockUI block="panel" trigger="saveButton">  
                <p>Processing....</p>
                <p:graphicImage value="http://www.primefaces.org/showcase/images/loading.gif"/>  
            </p:blockUI>
        </h:form>
    </h:body>
</html>    

1 个答案:

答案 0 :(得分:1)

在您的XHTML中

<script src="js/jquery.min.js"></script>

PrimeFaces已附带jQuery捆绑,但您已经下载并安装了另一个仅与PrimeFaces捆绑的jQuery冲突的内容。

删除line以上<script src="js/jquery.min.js"></script>

尝试以上,看看是否有帮助。