2014-09-01 90 views
0

您好我想打个电话从Java脚本函数定期备份豆我想刷新我的页面,而不是 整个页面的面板,这是我自己编写的脚本JSF JavaScript调用Primefaces componants

$('#submitbutton').click();

<h:commandButton id="submitbutton" immediate="true" value="" styleClass="ui-day" style="border:0;display : none;" 
          action="#{liveGraphBean.plotInterval1('daily')}" > 

,而是清爽的,我想刷新面板只有页面的

<p:panel id="dailyGraphPanel"> 
        <div id="chartdiv" style="width: 100%; height: 400px;"></div> 
       </p:panel> 

怎么能我这样做的感谢

回答

1

您可以使用Primeface投票标签

http://www.primefaces.org/showcase/ui/ajax/poll.xhtml

http://www.primefaces.org/showcase/ui/ajax/remoteCommand.xhtml

<h:commandButton id="submitbutton" immediate="true" value="Submit" styleClass="ui-day" style="border:0;display : none;" action="#{liveGraphBean.plotInterval1('daily')}"> 
    <f:ajax render="dailyGraphPanel" execute="@this"/> 
</h:commandButton> 

或者

<p:commandButton id="submitbutton" immediate="true" value="Submit" styleClass="ui-day" style="border:0;display : none;" action="#{liveGraphBean.plotInterval1('daily')}" update="dailyGraphPanel" process="@this" /> 

<h:panelGroup id="dailyGraphPanel"> 
    <div id="chartdiv" style="width: 100%; height: 400px;"></div> 
</h:panelGroup> 
+0

嗨ashok感谢您的回复我试过了,但它显示空白面板我有一个脚本,通过它我正在绘制一个图 – Sumeet 2014-09-01 06:58:27

+0

根据你的问题“定期打电话回豆” - “刷新面板”。民意调查标签将完美运作。 JS不需要这里。 – ashokhein 2014-09-01 08:42:06

+0

但我从javascript $('#submitbutton')。click(); – Sumeet 2014-09-02 04:26:02

0

我也建议你使用http://www.primefaces.org/showcase/ui/ajax/poll.xhtml

这将是,恕我直言,非常简单和清洁,您的图表组件#chartdiv刷新您的面板刷新。

然而,随着一些修改,也许拟合约束的快速的解决方案,你不用解释也可能是您从

<h:commandButton id="submitbutton" immediate="true" value="" styleClass="ui-day" style="border:0;display : none;" action="#{liveGraphBean.plotInterval1('daily')}" > 

切换到

<p:commandButton id="submitbutton" immediate="true" value="" styleClass="ui-day" style="border:0;display : none;" action="#{liveGraphBean.plotInterval1('daily')}" update="dailyGraphPanel"> 

根据的相对位置的p:commandButton和p:panel,pour可能需要调整要更新的组件的路径,或者可能只是使用其中一个便捷的primefaces功能,p:组件

<p:commandButton id="submitbutton" immediate="true" value="" styleClass="ui-day" style="border:0;display : none;" action="#{liveGraphBean.plotInterval1('daily')}" update="#{p:component}"> 

我没有看到小时更新属性:的commandButton DOC http://docs.oracle.com/javaee/6/javaserverfaces/2.0/docs/pdldocs/facelets/,但你会发现它在号码:的commandButton http://www.primefaces.org/docs/vdl/3.5/primefaces-p/commandButton.html

你应该阅读PrimeFaces文档的“部分呈现”一节关于如何更详细的解释这有效(PrimeFaces优秀用户指南http://www.primefaces.org/docs/guide/primefaces_user_guide_5_0.pdf的第498页第4.1节)。

+0

嗨Ludoic谢谢你的回复我试过了,但我的整个页面正在刷新 – Sumeet 2014-09-02 04:24:51