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

jQuery Ajax显示数据

訾凯歌
2023-03-14
问题内容

假设我有一个页面,该页面会随着时间的流逝缓慢地返回一堆数据。例如,例如:

<?php

$iTime = time();

while(time()-$iTime < 10 ) {
    echo "Hello world";
    echo str_repeat( ' ', 1024 ) . "<br />";
    flush( );
    sleep(3);
}

?>

我想显示所有数据,因此它将“实时”更新。就像这样,一旦发送了一行数据,它将允许我解析并显示数据吗?

有没有办法通过jQuery做到这一点?抱歉,以前是否有人问过这个问题

谢谢你的时间!:)


问题答案:

当然,建立一个基本的彗星风格的长轮询非常简单:

PHP:

<?php
    $data = null;
    while ($data ==  null)
    {
         $data = find_data($_REQUEST['last_update']); // This is up to you.
                    // Although you may do a DB query, that sort of breaks the model
                    // from a scalability perspective.  The point in this kind of
                    // operation is to rely on external data to know that it needs to 
                    // update users, so although you can keep your data in a DB, you'll
                    // want a secondary storage mechanism to keep from polling it.
                    //
                    // Conceptually, you'd put new information into this data storage
                    // system when something changes (like new data from an external
                    // source.  The data storage system could check to see if a file
                    // has been updated or if there is new data in something like a
                    // memcached key.  You'd then consume the data or otherwise 
                    // mark it as used.
         sleep(5);
    }
    echo json_encode($data);

JavaScript:

 function setListener()
 {
      $.ajax({
           url: 'updater.php',
       dataType: 'json',
       success: function(data, status, xhr) 
           {
              // do something, such as write out the data somewhere.
              setListener();
           },
       error: function()
           {
               setTimeout(setListener,10000);
           }
       });
 }


 类似资料:
  • 本文向大家介绍extjs_02_grid显示本地数据、显示跨域数据,包括了extjs_02_grid显示本地数据、显示跨域数据的使用技巧和注意事项,需要的朋友参考一下 1.显示表格 2.显示本地数据 3.显示跨域jsonp数据

  • 问题内容: 我正在尝试填写从GET请求中收到的一些数据。我不知道为什么,但是如果在我的中,我返回一个特定的值(例如8),它表示信息。如果y返回请求填充的数组的值,则不添加任何行: 知道为什么会这样吗?非常感谢你!! 更新! 我解决了这个问题,在loadUserData()函数内的complete()之后添加了self.tableView.reloadData()。希望能帮助到你! 问题答案: 快速

  • 我正在尝试jQuery数据表控件。问题是我不能显示数据。 HTML是: 如果我注释掉Ajax代码并取消注释 它很好用。变量是我使用firefox从服务中获取的JSON数据- 我读了很多帖子,尝试了很多东西,但都没能成功。有什么帮助吗?谢谢 编辑:服务代码: 《编辑》20150721:我对HTML代码做了一些修改,但有一个小错误。加载时,我在页面顶部看到了table元素的标题(ActivityHis

  • 但我什么也得不到。当我试图回显setup_postdata之后的细节时,它只有一个回显“数组”。 当我var_dump$post时,它也会显示所有数据。 这是我时得到的结果 object(WP_Post)#614(24){[“id”]=>int(69)[“post_author”]=>string(1)“1”[“post_date”]=>string(19)“2017-08-22 02:26:43

  • 在Angular JS中,很容易在HTML表单中显示类属性的值。 让我们举个例子来了解更多有关数据显示的信息。 在我们的示例中,我们将在HTML页面中查看在类中显示各种属性的值。 Step 1 - 将app.component.ts文件的代码更改为以下内容。 import { Component } from '@angular/core'; @Component ({ selecto

  • 应用程序运行良好...只是数据没有出现...我已经添加了sha用户电子邮件显示在登录后,在登录活动中我已经添加了 但是在实时数据库数据不显示以防万一…我也等了半个小时,尝试了所有的东西…网络也不错。数据库中的数据库规则的数据库图片 mainActivity.java//不能用于单个子级,即firebaseDatabase.getInstance().getReference().child(“aj