我使用带有Primefaces的ajax remoteCommand
组件,此组件使用布尔值更新inputHidden
字段。
我在onsuccess
remoteCommand
事件上调用JS函数,但似乎我的函数在DOM更新之前被调用,因为当我测试inputHidden
值时,这不是正确的值但是如果我设置间隔后测试3s,我有正确的价值...
代码:
<p:remoteCommand process="..." onsuccess="hideOrShowNotification();" />
第一次JS测试:
function hideOrShowNotification(){
alert($('#tabView\\:register_form\\:hiddenNotification').val());
}
第二次JS测试:
function hideOrShowNotification(){
setInterval(function(){alert($('#tabView\\:register_form\\:hiddenNotification').val());}, 3000);
}
在第一种情况下,我收到false
值,在第二种情况下,我收到true
值。预期值为true
。
所以当调用我的JS函数时,我的DOM没有完全加载。
如何在完全加载DOM后调用JS函数?我相信onsuccess
事件会这样做,但显然没有。
答案 0 :(得分:2)
好的......这是oncomplete
事件。我之前测试过,但也许我忘了清除浏览器缓存以重新加载新的JS文件。