我们是weblogic10.3.7中的JSF2。
我们要求在页面加载完成后自动触发ajax调用。
可能这可以通过javascript document.ready function触发。
有更好的方法吗?
由于
答案 0 :(得分:0)
看看PrimeFaces的RemoteCommand。您可以在RemoteCommand
函数中调用此document.ready
来执行某些bean方法。
答案 1 :(得分:0)
尝试以下不包含任何外部库的代码。
xhtml代码:
<script type="text/javascript">
var startCalls=false;
$(document).ready(function (){
clickButton();
startCalls=true;
})
function clickButton(){
document.getElementById('btn_test').click();
}
</script>
<h:commandButton id="btn_test" value="Test"
actionListener="#{testBean.increaseCount}"
style="display: none">
<f:ajax execute="btn_test" render="pnl_update_area"/>
</h:commandButton>
<h:panelGroup id="pnl_update_area">
This is called #{testBean.clickCount} times
<script type="text/javascript">
if(startCalls){
setTimeout('clickButton()',200);
}
</script>
</h:panelGroup>
JSF代码:
Integer clickCount=1;
public Integer getClickCount() {
return clickCount;
}
public void setClickCount(Integer clickCount) {
this.clickCount = clickCount;
}
public void increaseCount(ActionEvent event) {
clickCount++;
}