私は Primefaces で ajaxremoteCommand
コンポーネントを使用しており、このコンポーネントはinputHidden
フィールドをブール値で更新します。
onsuccess
イベントでJS関数を呼び出しますが、値をテストするとき、これは正しい値ではありませんが、3秒後にテストする間隔を設定すると、正しい値を持っているremoteCommand
ため、DOM更新の前に関数が呼び出されるようです...inputHidden
コード :
<p:remoteCommand process="..." onsuccess="hideOrShowNotification();" />
最初の JS テスト:
function hideOrShowNotification(){
alert($('#tabView\\:register_form\\:hiddenNotification').val());
}
2 番目の JS テスト:
function hideOrShowNotification(){
setInterval(function(){alert($('#tabView\\:register_form\\:hiddenNotification').val());}, 3000);
}
最初のケースではfalse
価値を受け取り、2 番目のケースではtrue
価値を受け取ります。期待値はtrue
です。
そのため、JS 関数が呼び出されたときに DOM が完全に読み込まれていません。
DOM のフルロード後に JS 関数を呼び出すにはどうすればよいですか? 私はonsuccess
イベントがそれを行うと信じていましたが、どうやらそうではありませんでした。