从服务器获取额外数据以及POST请求

时间:2010-07-14 18:57:01

标签: jquery

所以我有一些分页工作,但是我需要访问一个变量(总页数)。当我通过更改页面(或以其他方式更新表格)获取要在表格中显示的数据时,在同一请求中获取变量的好方法是什么?

1 个答案:

答案 0 :(得分:1)

如果您的数据是以XML或JSON等定义良好的形式传输的,您只需在输出中添加一个额外的参数即可。 $.post可以配置为通过最后一个参数将服务器的响应解码为XML或JSON。

使用JSON,您的客户端代码可能如下所示:

// Request page 3 from the server
$.post(url, {page:3}, function(data, textStatus, XMLHttpRequest) {
   // data.page contains the HTML for page 3
   // data.num_pages contains the number of pages
}, 'json');

并且(假设服务器端有PHP)你会输出你的JSON数据:

<?php
  // instead of dumping the HTML for page 3 directly to the browser,
  // send it as part of a JSON-encoded response
  $page = '<div class="page">Page 3 of 10</div>';

  echo json_encode(array(
    'page' => $page,
    'num_pages' => 37, // substitute with your calculated number of pages
  ));
?>