当前位置: 首页 > 面试题库 >

发出JSF Ajax请求时显示加载进度

左丘嘉言
2023-03-14
问题内容

使用发出请求时,如何显示一些加载消息<f:ajax>


问题答案:

如果您尚未使用可能已经有现成组件的第3方组件库,例如带有PrimeFaces的组件<p:ajaxStatus>,则可以使用JSF提供的JavaScript
jsf.ajax.addOnEvent()函数(最终也可以使用jsf.ajax.addOnError())在ajax上挂钩函数事件。

这是一个基本的启动示例:

<script>
    jsf.ajax.addOnEvent(function(data) {
        var ajaxstatus = data.status; // Can be "begin", "complete" and "success"
        var ajaxloader = document.getElementById("ajaxloader");

        switch (ajaxstatus) {
            case "begin": // This is called right before ajax request is been sent.
                ajaxloader.style.display = 'block';
                break;

            case "complete": // This is called right after ajax response is received.
                ajaxloader.style.display = 'none';
                break;

            case "success": // This is called when ajax response is successfully processed.
                // NOOP.
                break;
        }
    });
</script>

<img id="ajaxloader" src="ajaxloader.gif" style="display: none;" />

另请参阅JSF
2.0规范的
第13.3.5.2章:

13.3.5.2监视所有Ajax请求的事件

JavaScript
API提供了jsf.ajax.addOnEvent可用于注册JavaScript功能的功能,当发生任何Ajax请求/响应事件时,该功能将得到通知。有关更多详细信息,请参见第14.4节“注册回调函数”。该jsf.ajax.addOnEvent函数接受一个JavaScript函数参数,当在任何Ajax请求/响应事件周期中发生事件时,该参数将被通知。该实现必须确保必须根据表14-3“事件”中概述的事件来调用已注册的JavaScript函数。

顺便说一下,您可以从http://www.ajaxload.info免费获取一些很棒的Ajax加载器gif



 类似资料:
  • 问题内容: 我正在用jquery发出AJAX请求,例如: 在加载此数据时,我想在页面顶部显示一个小的文本(上面仅显示“正在加载…”), 而不会阻止它 。 这该怎么做? 问题答案: 3nigma步入正轨,但至少在一般情况下,有一个细节是错误的。 使用ajaxSetup仅提供默认值,如果以后您进行一些ajax调用,这些调用指定它们自己的beforeSend回调(即,您需要设置一些特定的标头)或完成(您

  • 我的问题很简单,我已经请求了JSONYouTubev3数据API,但是,我想显示从链接请求的数据:https://www.googleapis.com/youtube/v3/channels?part=statistics

  • 我想向soap请求发送XML,我使用python请求,如下所示: 当我发送请求时,我会发出以下请求: 我在这样的请求中进行: 我给出了一些错误,比如你不能发送这样的请求。 我意识到我必须发送带有此请求的证书才能获得成功响应 我有<代码>。cer和。crt文件发送,但我这样发送: 并得到以下错误: 更新: 我在PK中使用openssl x509-inform der。cer-输出PK。pem并尝试以

  • 如何显示一个进度条,同时获取图像从URL在线圈。?

  • 问题内容: 我知道互联网上有成千上万个示例,但是对于脚本,我已经必须在检索数据时显示加载的gif图像。我的Java知识很差,因此我想问如何更改以下内容: 我的div在这里: 谢谢。约翰 问题答案: 假设您在页面上某处有一个标签,其中包含您的加载消息: 您可以在ajax调用中添加两行:

  • 问题内容: 我想使用对服务器进行一些API调用。但是请求未成功,返回: 因此,我想检查发送到服务器的“真实”内容是什么。实际内容是指确切的HTTP请求。 有什么想法可以看到吗? 编辑: 根据此处的第一个答案,我应该澄清我的问题:我想避免使用外部程序(例如HTTP嗅探器)或其他任何东西,而我希望有一个函数或一个属性或任何包含我要查找的信息的东西。 如果不是这种情况,有人知道该信息是否可以手动重建(例