6

私は作業しているのでTinyMCE(「Primefacesにはエディターがあります」などに入らないでください)、呼び出しのJavascript前後に小さな部分を実行する必要がありAjaxます。Ajaxたくさんあるので、すべての -call を編集するのは避けたいと思います(そうすることは、将来のメンテナンスの悪い習慣になります)。

ページ上でJavascriptpre-any-call と post -any-callを実行するための最も洗練されたソリューションは何でしょうか?Ajax

注: -textareaのカスタムcompositeを使用しています。TinyMCEイベントもこのオブジェクトで十分です。ただし、実際のAjax-trigger はまったく異なるオブジェクトによって呼び出される可能性があることに注意してください (ただし、 を再レンダリングすることはできますcomposite)。

4

2 に答える 2

8

jsf.ajax.addOnEventハンドラーを使用します。

jsf.ajax.addOnEvent(function(data) {
    switch(data.status) {
        case "begin":
            // This is invoked right before ajax request is sent.
            break;

        case "complete":
            // This is invoked right after ajax response is returned.
            break;

        case "success":
            // This is invoked right after successful processing of ajax response and update of HTML DOM.
            // In case you're interested in error handling, use jsf.ajax.addOnError handler.
            break;
    }
});

目的のページの に<h:outputScript target="head">含まれる JS ファイルに入れるだけです。これにより、名前空間を含むJSF 自身の後に<h:body>ロードされることが保証されます。jsf.jsjsf

于 2013-05-09T14:39:25.257 に答える