使用jQuery $ .ajax来检索数据

时间:2013-11-13 13:39:15

标签: php jquery ajax

我通常使用$ .ajax将数据发送到URL中的方法。经过一些搜索,我发现我可以检索结果数据。我是以错误的方式看待这个吗?我需要正确解释它的用法。

另外,如果我想要检索比“data:”字段中更多或不同的数据,我该怎么办?什么是“上下文:”字段的用途?

$.ajax({
  url: getById,
  type: 'POST',
  context: document.body,
  async: false,  
  data: {
    id : id.val(),
    name : name.val()
  },
  success:function(data) {
    // do something with the retrieved data
  }
});

4 个答案:

答案 0 :(得分:1)

这可能很有用,从ID&获取数据将它作为数据字符串传递给任何页面

  var uname=$('#uname').val();
  var password=$('#password').val();

  var dataString = 'uname='+ uname + '&password='+ password;
  $("#flash").show();
  $("#flash").fadeIn(400).html('<img src="image/loading.gif" />');
  $.ajax({
  type: "POST",
  url: // Here pass your page URL
  data: dataString,
  cache: false,
  success: function(result){
           var result=trim(result);
           $("#flash").hide();
           if(result=='correct')
           {
                 // Do whatever you want
           }
          else
           {
                 // Display error message to page, if any        
                 $("#errorMessage").html(result);
           }
  }
  });

答案 1 :(得分:1)

在您的示例中,“id”和“name”是服务器的参数;如果您没有检索动态页面,那么您可能希望使用GET而不是“POST”,您需要的数据(对于您的AJAX调用者)是来自服务器的响应。对于AJAX,该响应通常使用

之一进行编码

但你当然可以只检索任何东西(包括 HTML )并使用jQuery替换说div

<div id='elementId'></div>

内容

 $("#elementId").html(htmlResponse);

答案 2 :(得分:1)

data可以是从服务器传回的任何信息。通常在接收数据的$.ajax调用中,您还可以在AJAX调用本身中指定dataType参数。最常见的是json,但也有其他类型(XML,HTML等)。

如果要检索多个字段,则不要在回调中添加更多数据变量,只需对数据进行编码即可将其从data变量中拉出。使用JSON的示例,您可以使用所需的数据在服务器端对json进行编码,然后将其从该data变量中拉出来。

我建议看看http://api.jquery.com/jQuery.ajax/并阅读它,它提供了很好的例子。另外,请访问Google并查看将数据返回给jQuery AJAX调用,有多个教程使用不同的后端。

答案 3 :(得分:0)

您尝试发回哪种类型的数据?向我们展示名为

的脚本

对于纯文本/ html,这是一个工作示例https://github.com/tomtoms/ajax-jquery-php