Java 如何在JSF页面中使用JQuery创建进度条
我想在JSF页面中创建进度条原型。此代码用于创建简单的html进度条:Java 如何在JSF页面中使用JQuery创建进度条,java,javascript,jsf,jsf-2,Java,Javascript,Jsf,Jsf 2,我想在JSF页面中创建进度条原型。此代码用于创建简单的html进度条: <script type="text/javascript"> $(function(){ // Progressbar $("#progressbar").progressbar({ value: 50 });
<script type="text/javascript">
$(function(){
// Progressbar
$("#progressbar").progressbar({
value: 50
});
});
</script>
<!-- Progressbar -->
<h2 class="demoHeaders">Progressbar</h2>
<div id="progressbar"></div>
$(函数(){
//进度条
$(“#progressbar”).progressbar({
价值:50
});
});
进度条
这段代码可视化了简单的进度条。一个支持bean将为循环执行
,并将返回到进度条中完成任务的百分比。我最大的谜团是如何将已完成任务的值从Java方法传递回JS代码?当for
值增加时,我如何在每次增加时自动进行AJAX调用?使用PrimeFaces
支持AJAX的服务器端交互,这会更容易:使用“普通”jQuery,您必须编写大量的Java/JavaScript样板代码,以便将jQuery无缝集成到JSF中,或者寻找令人讨厌的代码“隐藏按钮“hacks.还有一个更具体的问题:我可以为
循环创建,它可以模拟一些进程,并且我可以使用getter/setter将值发送到JS代码。我可以将进度条放入表单的
,可以通过AJAX执行。有趣的部分是AJAX部分如何从getter/setter获取值以使进度条“活动”。也许有一种方法可以从bean调用回JSF页面?您可以使用“隐藏按钮”hack更新一个
,它打印一个表示当前进度的全局JS变量,然后用JSsetInterval()
或setTimeout()调用它
。我很好奇prime faces开发人员是如何开发进度条的?也许是同样的方式?不,绝对不是。他们已经开发了自己的JS ajax引擎和JSF视图处理程序,它们在JSF生命周期中无缝地集成了jQuery,从而通过PrimeFaces UI组件使两者之间的交互更加容易。这是开源的,如果你感兴趣的话可以看看。如果你已经在问一些问题,这些问题表明你对基本的东西是如何“隐藏”的缺乏概念性的理解,我不建议你重新发明/在家里种植它。