微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

每个Ajax调用的Javascript(之前和之后)

由于我正在使用TinyMCE(请不要进入“Primefaces有一个编辑器”或类似的东西)我需要在每次Ajax调用之前和之后执行一小段 Javascript.我不希望为此编辑每个Ajax调用,因为有很多(并且这样做对于任何将来的维护都是不好的做法).

什么是在页面上任何Ajax调用之前和之后执行Javascript的最优雅的解决方案?

注意:我正在为TinyMCE-textarea使用自定义组合.任何事件也都是这个对象也足够了.虽然请记住,实际的Ajax触发器可能由完全不同的对象调用(尽管可能会重新渲染复合体).

解决方法

使用 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;
    }
});

只需将其放在一个JS文件中,该文件包含在< h:outputScript target =“head”>中.在< h:body>中所需页面.这将确保它在JSF自己的包含jsf名称间的jsf.js之后加载.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐