【发布时间】:2013-01-07 16:26:41
【问题描述】:
我将 ajax remoteCommand 组件与 Primefaces 一起使用,该组件使用布尔值更新 inputHidden 字段。
我在 remoteCommand 的 onsuccess 事件上调用 JS 函数,但似乎我的函数在 DOM 更新之前被调用,因为当我测试 inputHidden 值时,这不是正确的值,但如果我设置间隔来测试3 秒后,我得到了正确的值...
代码:
<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 事件会这样做,但显然不会。
【问题讨论】:
标签: ajax primefaces