In jQuery, getJSON is often used to call and obtain a remote JSON string and convert it to a JSON object. If it is successful, the callback function is executed. The prototype is as follows:
JQuery. getJSON (url, [data], [callback]) loads JSON data across domains.
- Url: the address where the request is sent
- Data: (optional) key/value parameter to be sent
- Callback: (optional) callback function for successful Loading
It is mainly used by clients to obtain server JSON data. Simple Example:
The server script returns JSON data:
// $.getJSON.php$arr=array("name"=>"zhangsan", "age"=>20); $jarr=json_encode($arr); echo $jarr;
Note: first, use the PHP json_encode function to encode the data to be returned before returning to the client. Second, echo rather than return is returned to the client.
The core client code is as follows:
<script language="javascript" type="text/javascript" src="./js/jquery.js"></script> <script language="javascript" type="text/javascript"> function getjs() { $.getJSON("$.getJSON.php", {}, function(response){ alert(response.age); }); } <input type="button" name="btn" id="btn" value="test" onClick="javascript:getjs();"/>
Because PHP uses JSON encoded return values, you must use getJSON to call the PHP file to obtain data. At the same time, it can be noted that the data obtained through getJSON has become an object array, and the returned values can be intuitively obtained using response. name and response. age.
Jquery provides $. the getJSON method allows us to implement cross-origin ajax requests, but the content on jqueryAPI is too small. How to use $. getJSON: What kind of database should the request website return for $. after getJSON is obtained, I will use an actual example to describe it.
The backend uses php. One of the main functions of the following code is to provide an interface for booking and registration. The data to be imported includes the user name, contact number, and address:
/* Execution interface for booking registration */case "yuyue_interface": $ name = trim ($ _ GET ['name']); $ phone = trim ($ _ GET ['phone']); $ addr = trim ($ _ GET ['addr ']); $ dt = date ("Y-m-d H: I: s"); $ cb = $ _ GET ['callback']; if ($ name = "" | $ name = NULL) {echo $ cb. "({code :". json_encode (1 ). "})";} elseif ($ phone = "" | $ phone = NULL) {echo $ cb. "({code :". json_encode (2 ). "})";} elseif ($ addr = "" | $ addr = NULL) {echo $ cb. "({code :". json_encode (3 ). "})";} else {$ db-> execute ("insert into tb_yuyue (realname, telphone, danwei, dt, ischeck) values ('$ name ', '$ phone', '$ addr', '$ dt', 0) "); echo $ cb. "({code :". json_encode (0 ). "})";} exit; break;
Then the front-end processing is completed:
$ (Document ). ready (function () {// The following three parameters are required for booking registration var name = "name"; // varchar type, with a maximum length of 8 characters (4 Chinese characters) var phone = "phone"; // varchar type; Length: 11 bits var addr = "addr"; // varchar type; Length: 500 bits (250 Chinese characters) $. getJSON ("http: // request the website address/data. php? Ac = yuyue_interface & name = "+ name +" & phone = "+ phone +" & addr = "+ addr +" & callback =? ", Function (data) {if (data. code = 1) {// custom code alert ("name cannot be blank");} else if (data. code = 2) {// custom code alert ("the phone cannot be blank");} else if (data. code = 3) {// custom code alert ("the unit cannot be blank ");} else {// custom code alert ("Reservation successful ");}});});
It should be noted that in the backend php code, the passed "& callback =? "Also output, such:
$cb = $_GET['callback'];echo $cb."({code:".json_encode(4)."})";
The above is a simple $. getJSON test. Through this test, we can learn how to use $. getJSON and How to Make an interface for cross-origin requests by others.