-3
$.get("test.php", function(data) {
    alert("Data Loaded: " + data);
});

What exactly can I expect to be inside the data parameter of the callback function after requesting for test.php?

Secondly, if I'm querying my database in test.php, what sort of code would I need to pass on the values of the query to the parameter data inside my callback function?

I'm confused about the connection between sending the request and what the callback function 'gains' after the request succeeds and it is executed.

4

4 回答 4

4

$.get()对您使用 HTTP Method 指定的任何 URL 进行 AJAX 调用GET。服务器端脚本返回的数据就是你在data成功回调的参数中得到的数据。

回调仅在success服务器端脚本返回响应后触发。如果脚本发送Content-Type: application/json,则 jQuery 会将响应解析为 JS 对象,因此它data不是字符串,而是对象。

$.get只是一个简写,$.ajax()它允许您进行更精细的控制:

$.ajax({
  type: GET,
  url : 'test.php',
  success : function(data) {
    console.log(data);
  }
});

进一步阅读:

jQuery.get()
jQuery.ajax()
AJAX 入门

于 2013-05-12T00:05:52.813 回答
4

根据官方 jQuery 文档.get()发出 HTTP GET 请求以从服务器检索数据。

由于请求是客户端,如果您请求内容,例如,test.php您将收到的数据是脚本运行的输出,即您不会在响应中收到任何PHP源代码;您收到的数据将与您直接访问该页面时完全相同(除非您在请求使用该页面时传递了其他数据)。

例如,如果您使用此代码:

$.get("test.php", function(data) {
  alert("Data Loaded: " + data);
});

并且您的test.php文件具有以下内容:

<?php
    echo "hello";
?>

那么您的警报将显示以下文本:

数据加载:你好

此外,如果你想传递额外的参数,你可以这样做:

$.get("test.php", { name: "John", time: "2pm" }, function(data) {
    alert("Data Loaded: " + data);
});

然后在test.php

echo $_GET['name'];
于 2013-05-12T00:09:08.230 回答
1

使用 HTTP GET 请求从服务器加载数据。

http://api.jquery.com/jQuery.get/

这是向服务器发送简单的 GET 请求而无需使用更复杂的 $.ajax 函数的简单方法。它允许指定将在请求完成时执行的单个回调函数(并且仅当响应具有成功的响应代码时)。如果您需要同时拥有错误和成功回调,您可能需要使用 $.ajax。

于 2013-05-12T00:04:59.737 回答
0

数据来自 PlainObject 或 String 类型。你的问题的第二部分已经回答了。

于 2013-05-12T00:10:49.077 回答