国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

ajax處理返回的json格式數據方法

來源:懂視網 責編:小采 時間:2020-11-27 22:51:29
文檔

ajax處理返回的json格式數據方法

ajax處理返回的json格式數據方法:以用戶注冊為例: register.php <html> <head> <title>用戶注冊</title> <meta http-equiv=content-type content=text/html;charset=utf-8/> <script type=te
推薦度:
導讀ajax處理返回的json格式數據方法:以用戶注冊為例: register.php <html> <head> <title>用戶注冊</title> <meta http-equiv=content-type content=text/html;charset=utf-8/> <script type=te

以用戶注冊為例:

register.php

<html>
<head>
<title>用戶注冊</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<script type="text/javascript">
 
	//創建ajax引擎
	function getXmlHttpObject(){
	
	var xmlHttpRequest;
	//不同的瀏覽器獲取對象xmlhttprequest 對象方法不一樣
	if(window.ActiveXObject){
	
	xmlHttpRequest=new ActiveXObject("Microsoft.XMLHTTP");
	
	}else{
 
	xmlHttpRequest=new XMLHttpRequest();
	}
 
	return xmlHttpRequest;
 
	}
	var myXmlHttpRequest="";
 
	//驗證用戶名是否存在
	function checkName(){
	
	myXmlHttpRequest=getXmlHttpObject();
 
	//怎么判斷創建ok
	if(myXmlHttpRequest){
	
	//通過myXmlHttpRequest對象發送請求到服務器的某個頁面
	//第一個參數表示請求的方式, "get" / "post"
	//第二個參數指定url,對哪個頁面發出ajax請求(本質仍然是http請求)
	//第三個參數表示 true表示使用異步機制,如果false表示不使用異步
	var url="regisgerProcess.php";
	//這個是要發送的數據
	var data="username="+$('username').value;
	//打開請求.
	myXmlHttpRequest.open("post",url,true);
	//還有一句話,這句話必須.
	myXmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	//指定回調函數.chuli是函數名
	myXmlHttpRequest.onreadystatechange=chuli;
 
	//真的發送請求,如果是get請求則填入 null即可
	//如果是post請求,則填入實際的數據
	myXmlHttpRequest.send(data); 
 
 
	}
	}
 
	//回調函數
	function chuli(){
	
	//window.alert("處理函數被調回"+myXmlHttpRequest.readyState);
	//我要取出從registerPro.php頁面返回的數據
	if(myXmlHttpRequest.readyState==4){
	
	//取出值,根據返回信息的格式定.text
	//window.alert("服務器返回"+myXmlHttpRequest.responseText);
 
	//$('myres').value=myXmlHttpRequest.responseText;
 
	//看看如果取出 xml格式數據
	//window.alert(myXmlHttpRequest.responseXML);
	
	//取出text或json數據用下面方式:獲取mes節點
	var mes=myXmlHttpRequest.responseText;
	window.alert(mes);
	//使用 eval 函數將 mes字符串轉換為對應的對象,注意eval函數格式如下:
	mes_obj = eval ("(" + mes + ")");
	window.alert(mes_obj.res);
	$('myres').value=mes_obj.res;
	}
	}
 
	//這里我們寫一個函數
	function $(id){
	return document.getElementById(id);
	}
</script>
</head>
<body>
	<form action="regisgerProcess.php" method="post">
 用戶名字:<input type="text" name="username1" id="username"><input type="button" onclick="checkName();" value="驗證用戶名">
 <input style="border-width: 0;color: red" type="text" id="myres">
 <br/>
 用戶密碼:<input type="password" name="password"><br>
 電子郵件:<input type="text" name="email"><br/>
 <input type="submit" value="用戶注冊">
 </form>
 <form action="???" method="post">
 用戶名字:<input type="text" name="username2" >
 
 <br/>
 用戶密碼:<input type="password" name="password"><br>
 電子郵件:<input type="text" name="email"><br/>
 <input type="submit" value="用戶注冊">
 </form>
 
</body>
</html>

regisgerProcess.php:

<?php
	//這里兩句話很重要,第一講話告訴瀏覽器返回的數據格式,若返回xml格式數據,此處寫header("Content-Type: text/xmla;set=utf-8"); ,
	//若返回tex或json數據,此處填寫header("Content-Type: text/html;charset=utf-8");
	header("Content-Type: text/html;charset=utf-8");
	//告訴瀏覽器不要緩存數據
	header("Cache-Control: no-cache");
 
	//接收數據(這里要和請求方式對于 _POST 還是 _GET)
	$username=$_POST['username'];
 
	//這里我們看看如何處理格式是json
	$info="";
	if($username=="shunping"){
	$info.='{"res":"用戶名可用"}';//注意,這里數據是返回給請求的頁面.
	}else{
	$info.='{"res":"用戶名不可用","id":"001"}';
	}
	echo $info;
?>

json數據詳解:

1、json的格式如下 :

"{屬性名:屬性值,屬性名:屬性值,.... }"

因為json數據是原生態數據,因此這種數據格式很穩定,而且描述能力強,我們建議大家使用json格式

2、 json數據格式的擴展

如果服務器返回的json 是多組數據,則格式應當如下:

$info="[{"屬性名":"屬性值",...},{"屬性名":"屬性值",...},....]";

在xmlhttprequest對象接收到json數據后,應當這樣處理

//轉成對象數組

varreses=eval("("+xmlHttpRequest.responseText+")");

//通過reses可以取得你希望的任何一個值

reses[?].屬性名

3、 更加復雜的json數據格式

<scriptlanguage="JavaScript">
 var people ={
 "programmers":
 [
 {"firstName":"Brett", "email": "brett@newInstance.com" },
 {"firstName":"Jason", "email": "jason@servlets.com" }
 ],
 "writer":
 [
 {"writer":"宋江","age":"50"},
 {"writer":"吳用","age":"30"}
 ],
 "sex":"男" 
};
window.alert(people.programmers[0].firstName);
window.alert(people.programmers[1].email);
 
window.alert(people.writer[1].writer);
window.alert(people.sex);
 </script>

4、當一個ajax請求到服務器,服務器可以根據需求返回 三種格式的數據,那么我們應當選擇哪一個?

a. 如果你的項目經理沒有特殊的要求,建議使用json

b. 若應用程序不需要與其他應用程序共享數據的時候, 使用 HTML 片段來返回數據時最簡單的

c. 如果數據需要重用, JSON 文件是個不錯的選擇, 其在性能和文件大小方面有優勢

d. 當遠程應用程序未知時, XML 文檔是首選, 因為 XML 是 web 服務領域的 “世界語”

以上這篇ajax處理返回的json格式數據方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

ajax處理返回的json格式數據方法

ajax處理返回的json格式數據方法:以用戶注冊為例: register.php <html> <head> <title>用戶注冊</title> <meta http-equiv=content-type content=text/html;charset=utf-8/> <script type=te
推薦度:
標簽: 處理 數據 類型
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 欧美人一级淫片a免费播放 欧美精品专区免费观看 | 久久久久亚洲精品美女 | 国产精品一区二区午夜嘿嘿嘿小说 | 亚欧美| 日韩欧美精品综合一区二区三区 | 日韩欧美专区 | 亚洲国产成人久久一区久久 | 国产美女一级特黄毛片 | 日韩经典第一页 | 欧美日韩国产一区二区三区不卡 | 亚洲图片国产日韩欧美 | 中文字幕日本一本二本三区 | 日韩欧美高清一区 | 亚洲综合欧美日本另类激情 | 欧美另类网站 | 日本成本人观看免费fc2 | 亚洲国产视频网 | 亚洲欧美日韩专区 | 亚洲伊人网站 | 日本丶国产丶欧美色综合 | 日韩一区二区免费视频 | 欧美一区二区高清 | 好看的电影网站亚洲一区 | 精品一区二区三区五区六区七区 | 国产在线高清视频 | 国产欧美综合一区二区 | 大陆一级毛片 | 在线播放国产一区二区三区 | 青青国产成人久久激情91麻豆 | 国产三级在线 | 国产91精品久久久久久久 | 国产精品观看 | 欧美精品久久天天躁 | 广东东莞一级毛片免费 | 国产一区二区三区成人久久片 | 成年全黄大色大黄 | 欧美人与禽zoz0性伦交 | 国产精品免费网站 | 欧美激情综合亚洲一二区 | 香蕉久久一区二区不卡无毒影院 | 欧美日韩电影在线观看 |