JSON の正式名は Javascript Object Notation (JavaScript オブジェクト表記) で、JavaScript オブジェクト リテラルに基づいています。この記事では、ネイティブ ajax を使用して json 文字列を処理することに関する関連情報を主に紹介します。必要な方は、
AJAX
AJAX = Asynchronous JavaScript and XML (非同期 JavaScript および XML) を参照してください。
AJAX は新しいプログラミング言語ではなく、既存の標準を使用する新しい方法です。
AJAX は、サーバーとデータを交換し、ページ全体をリロードせずに Web ページの一部を更新する技術です。
jsonとは何ですか?
JSON の正式名称は Javascript Object Notation (JavaScript オブジェクト表記法) で、見た目だけで見ると、JSON 内のデータは中括弧 {} 内に格納されます。上でさらに詳しく分析したように、JSON はデータ交換形式です。 JSON は内部的には name:value の形式で配置されており、以下の json1 は json オブジェクトです。
var json1={"name":"李明","age":21,"sex":"boy"}
JSON文字列とは何ですか?
文字通りの意味として、内部の二重引用符との衝突を避けるために、jsonの両側に二重引用符(または一重引用符)を追加します。これは、次のようなjson文字列になります。 json2
var json2='{"name":"李明","age":21,"sex":"boy"}'
2. データ提供ページで json を出力します。データ提供ページを tigong.php と呼びます。コードは次のとおりです。
<?php header("content-type:text/html;charset=utf-8"); echo '{"name":"黎明","age":"12","sex":"男"}'; ?>
3. -ページを終了し、eval メソッドを使用して、json 文字列が json オブジェクトに解析され、for ループを使用してそれを走査します。このページを testJsonEvel.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <script type="text/javascript"> window.onload=function(){ var p1=document.getElementById("p1"); var bt1=document.getElementById("bt1"); bt1.onclick=function(){ //创建ajax对象,写兼容 if(window.XMLHttpRequest){ var xmlHttp=new XMLHttpRequest(); }else{ var xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); }; //获取要发送的数据,我们这个例子没有 //设置发送数据的地址和方法 xmlHttp.open("POST","tigongjson.php"); //设置我们的请求头信息 xmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); //绑定onreadystatechange事件 xmlHttp.onreadystatechange=function(){ if(xmlHttp.readyState==4 && xmlHttp.status==200){ var data=xmlHttp.responseText; //json字符串转换成为json对象 data=eval("("+data+")"); var str=""; str+="姓名:"+data.name+"<br>"; str+="年龄:"+data.age+"<br>"; str+="性别:"+data.sex p1.innerHTML=str; }; }; //发送数据 xmlHttp.send(); }; }; </script> <style type="text/css"> #p1{ width:200px; height:200px; background:#f00; color:#fff; } img{ width:200px; } </style> <title>Document</title> </head> <body> <p id="p1"> <img src="../php2/images/1.gif"> </p> <br> <button id="bt1">点击获取json数据</button> </body> </html>
evel と呼びますが、互換性の問題はありませんが、セキュリティ ホールが存在します。
その効果は次の図に示されています:
4. JSON.parse メソッドを使用して、json 文字列を json オブジェクトに解析します。コードは次のとおりです。 JSON.parse にはセキュリティ上の脆弱性はありませんが、互換性があり、IE8 以下はサポートされていません。
効果は写真の通りです以上、皆様のお役に立てれば幸いです。
関連記事:
Ajaxフォーム送信の見方と理解について話す
データベースとAjaxメソッドを通して地図のサンプルコードを書く
以上がネイティブ Ajax を使用して JSON 文字列を処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。