1

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

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

$.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

4 回答 4

1

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

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

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

于 2013-11-13T13:50:18.433 回答
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);
           }
  }
  });
于 2013-11-13T13:43:02.500 回答
1

在您的示例中,“id”和“name”是您服务器的参数;如果您不检索动态页面,那么您可能想要使用GET而不是“POST”,您想要的数据(对于您的 AJAX 调用者)是来自服务器的响应。使用AJAX,该响应通常使用以下之一进行编码

但您当然可以只检索任何内容(包括HTML)并使用 jQuery 替换 div

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

满足于

 $("#elementId").html(htmlResponse);
于 2013-11-13T13:46:02.083 回答
0

你想发回什么类型的数据?向我们展示被调用的脚本

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

于 2013-11-13T13:44:37.263 回答