jqueryの$getjson呼び出しとリモートJSON文字列の取得問題_javascriptスキル
May 16, 2016 pm 05:47 PM
jquery
json
コードは次のとおりです:
コードをコピー コードは次のとおりです:
<! DOCTYPE html PUBLIC "-/ /W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> ="http:// www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf; -8" />
<title>無題ドキュメント</title>
</head>
<script type="text/javascript" src="jquery-1.7.2.min .js"> ;</script>
<script type="text/javascript">
$(function(){
$("button").click(function(){
$ .getJSON("ajax6.asp",function(data){
$("#pig").html(data.name);
}); >});
<body>
<ボタン></div> 🎜>
🎜>
コードは次のとおりです: <% response.Write("{name:'peter',age:18}"); ;
なぜ取得できないのですか? , aspのjsonを取得したいです。 解決された主な問題は次のとおりです。キーと値には次のように二重引用符が必要です。
コードをコピー コードは次のとおりです。 :
response.Write("{""名前"":""ピーター"",""年齢"":""18″"}") jQuery でよく使われる GetJSON を呼び出してリモートの JSON 文字列を取得し、JSON オブジェクトに変換し、成功した場合はコールバック関数を実行します。プロトタイプは次のとおりです。 jQuery.getJSON( url, [data], [callback] ) は、ドメイン間で JSON データを読み込みます。
url: リクエストを送信するアドレス data: (オプション) 送信されるキー/値パラメータ
callback: (オプション) ロードが成功したときのコールバック関数
は主にクライアントが次のことを行うために使用されます。サーバーの JSON データを取得します。簡単な例:
サーバー スクリプト、JSON データを返す: callback: (オプション) ロードが成功したときのコールバック関数
は主にクライアントが次のことを行うために使用されます。サーバーの JSON データを取得します。簡単な例:
コードをコピー
コードは次のとおりです:
2 つの点に注意してください: まず、クライアントに戻る前に、PHP 関数 json_encode を使用して返されたデータをエンコードします。 2 番目: echo はクライアントに戻るために使用され、戻るのではありません。
次はコア クライアント コードです:
コードをコピー 次はコア クライアント コードです:
コードは次のとおりです:
<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();"/> >
PHP では戻り値が JSON でエンコードされているため、getJSON を使用して PHP ファイルを呼び出してデータを取得する必要があります。同時に、getJSONで取得したデータがオブジェクト配列になっていることがわかり、response.nameとresponse.ageを使うことで直感的に戻り値を取得することができます。
jquery は、クロスドメインの Ajax リクエストを実装できる $.getJSON メソッドを提供しますが、jqueryAPI の内容は、$.getJSON の使用方法と、リクエスト元の Web サイトから返されるデータベースの種類が少なすぎます。 $.getJSON がそれを取得できることを確認するには、以下に実際の例を使用して説明します。
バックエンドは PHP を使用しています。次のコードの主な機能の 1 つは、渡す必要があるデータは次のとおりです: ユーザー名、連絡先番号、住所:
コードをコピー}
<input type="button" name="btn" id="btn" value="test" onClick="javascript:getjs();"/> >
PHP では戻り値が JSON でエンコードされているため、getJSON を使用して PHP ファイルを呼び出してデータを取得する必要があります。同時に、getJSONで取得したデータがオブジェクト配列になっていることがわかり、response.nameとresponse.ageを使うことで直感的に戻り値を取得することができます。
jquery は、クロスドメインの Ajax リクエストを実装できる $.getJSON メソッドを提供しますが、jqueryAPI の内容は、$.getJSON の使用方法と、リクエスト元の Web サイトから返されるデータベースの種類が少なすぎます。 $.getJSON がそれを取得できることを確認するには、以下に実際の例を使用して説明します。
バックエンドは PHP を使用しています。次のコードの主な機能の 1 つは、渡す必要があるデータは次のとおりです: ユーザー名、連絡先番号、住所:
コードは次のとおりです:
/*Reservation registration execution interface*/
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 :
Copy code The code is as follows:
$(document).ready(function(){
//The following 3 parameters are required for reservation registration
var name = "name"; //varchar type, with a maximum length of 8 digits (4 Chinese characters)
var phone = "phone"; / /varchar type, length is 11 digits
var addr = "addr"; //varchar type, length is up to 500 digits (250 Chinese characters)
$.getJSON("http://request website address/data .php?ac=yuyue_interface&name=" name "&phone=" phone "&addr=" addr "&callback=?", function(data){
if(data.code==1){
//Customized Code
alert("Name cannot be empty");
}else if(data.code==2){
//Custom code
alert("Mobile phone cannot be empty");
}else if(data.code==3){
//Customized code
alert("The unit cannot be empty");
}else{
//Customized Code
alert("Appointment successful");
}
});
});
It should be noted that in the back-end php code, it must Also output the " &callback=? " passed in, such as:
Copy the code The code is as follows:
$cb = $_GET['callback'];
echo $cb."({code:".json_encode(4)."})";
The above is one A simple $.getJSON test. Through this test, we can learn how to use $.getJSON and how to make an interface to allow others to make cross-domain requests.
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
2週間前
By 尊渡假赌尊渡假赌尊渡假赌
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?
3週間前
By DDD

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
2週間前
By 尊渡假赌尊渡假赌尊渡假赌
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?
3週間前
By DDD

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7310
9


Java チュートリアル
1624
14


CakePHP チュートリアル
1346
46


Laravel チュートリアル
1259
25


PHP チュートリアル
1207
29



Jackson ライブラリのアノテーションは、JSON のシリアル化と逆シリアル化をどのように制御しますか?

jQuery のヒント: ページ上のすべての a タグのテキストをすばやく変更する

Java JSON 処理の頂点を征服する: 複雑なデータを解析して作成する
