Maison > interface Web > js tutoriel > le corps du texte

Explication détaillée de la façon dont jQuery getJSON traite le code de données dans json

巴扎黑
Libérer: 2017-07-03 09:33:37
original
1217 Les gens l'ont consulté

Gestionnaire Ashx : Si vous devez renvoyer un objet au format json, vous devez définir le type MIME sur : "application/json".

Code HTML :

Le code est le suivant :

<script type="text/javascript" src="/js/jquery-1.4.js"></script> 
<script type="text/javascript"> 
function jsonTest1() 
{ 
$.ajax({ 
url:"Handler.ashx", 
data:{"type":"ajax"}, 
datatype:"json", 
type:"get", 
success:function(data) 
{ 
document.getElementById(&#39;p1&#39;).innerHTML=data;//因为mime类型是文本 所以返回回来的是json格式的字符串 
} 
}); 
} 
function jsonTest2() 
{ 
$.getJSON( 
&#39;Handler.ashx&#39;, 
{&#39;type&#39;: &#39;json&#39;,&#39;name&#39;:&#39;qixuejia&#39; }, //类型格式 
function(data) 
{ 
for(var i=0;i<data.length;i++) 
{ 
alert(data[i]["UserId"]) 
} 
} 
); 
} 
</script> 
<form id="form1" runat="server"> 
<p id="p1"> 
</p> 
<input type="button" value="jQuery.ajax()" onclick="jsonTest1()"/> 
<input type="button" value="jQuery.getJSON()" onclick="jsonTest2()"/> 
</form>
Copier après la connexion

Gestionnaire Ashx : Si vous devez retourner un objet au format json, vous devez définissez le type MIME sur : " application/json".
En regardant le fichier source jQuery, vous pouvez voir que getJSON est implémenté comme ceci :
getJSON : function( url, data, callback) {
return jQuery.get(url, data, callback, "json ");
},

Le code est le suivant :

public void ProcessRequest(HttpContext context) 
{ 
if (context.Request.Params["type"].Equals("ajax")) 
{ 
context.Response.ContentType = "text/plain"; 
} 
else 
{ 
context.Response.ContentType = "application/json"; 
} 
GetInfo(context); 
} 
public bool IsReusable 
{ 
get 
{ 
return false; 
} 
} 
public void GetInfo(HttpContext context) 
{ 
System.Collections.Generic.List<UserInfo> listUser = UserInfoManage.GetUserInfoBySQL("Select Top 5 * From Userinfo"); 
IsoDateTimeConverter timeConverter = new IsoDateTimeConverter(); 
timeConverter.DateTimeFormat = "yyyy&#39;-&#39;MM&#39;-&#39;dd&#39; &#39;HH&#39;:&#39;mm&#39;:&#39;ss"; 
string
 ResJsonStr = JsonConvert.Serialize
Object
(listUser, timeConverter); 
context.Response.Write(ResJsonStr); 
}
Copier après la connexion


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!