Maison  >  Article  >  interface Web  >  Présentation de l'utilisation de $.getJSON dans jquery

Présentation de l'utilisation de $.getJSON dans jquery

巴扎黑
巴扎黑original
2017-07-03 09:32:101441parcourir


jQuery.getJSON(url, [data], [callback])

Charger les données JSON via une requête HTTP GET.

Paramètres :

url,[data],[callback] String,Map,FunctionV1.0

url : Envoyer l'adresse de la demande.

data : Paramètres clé/valeur à envoyer.

rappel  : Fonction de rappel lorsque le chargement est réussi.

Comment utiliser getJson jQuery.getJSON(url,[data],[callback])
Pour obtenir un fichier json contenu, vous pouvez utiliser la méthode $.getJSON(). Cette méthode traitera le fichier après avoir obtenu le fichier correspondant et fournira l'objet JavaScript traité au code.

La fonction de rappel fournit un moyen d'attendre que les données soient renvoyées au lieu d'exécuter le code immédiatement. La fonction de rappel nécessite également un paramètre qui stocke les données renvoyées. De cette façon, nous pouvons utiliser une autre fonction globale (méthode de classe) .each() fournie par jQuery pour implémenter des opérations de boucle et parcourir chaque ensemble de données renvoyées par la fonction .getJSON.

Fournissez un petit exemple d'écriture de servlet :


package com.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONArray;

import com.entity.City;

/**
 * @author Administrator
 * 返回json字符串
 * 
 * 这里是用传统方法做的一个简单列子!
 * 整合struts,这种写法也能实现,但struts2已经实现了json,比这个写法方便
 * 
 */
public class GetJsonServlet extends HttpServlet {

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		this.doPost(request, response);
	}	
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		response.setCharacterEncoding("utf-8");
		
		PrintWriter out = response.getWriter();
		/*返回一个list集合来绑定下拉框*/
		List<City> list = new ArrayList<City>();
		list.add(new City(1,"AAAA"));
		list.add(new City(2,"BBBB"));
		list.add(new City(3,"CCCC"));
		list.add(new City(4,"DDDD"));
		//获取集合的json字符串
		JSONArray json = JSONArray.fromObject(list);
		System.out.println(json.toString());
		//打印结果:
		//[{"id":1,"name":"AAAA"},{"id":2,"name":"BBBB"},{"id":3,"name":"CCCC"},{"id":4,"name":"DDDD"}]
		out.print(json.toString());
		out.flush();
		out.close();
	}

}

Code de la page jsp :

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>    
    <title>My JSP &#39;index.jsp&#39; starting page</title>
  <script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>
  <script type="text/javascript">
  	//初始加载页面时    
$(document).ready(function(){
	alert("加载..............");
	var city=$("#city");//下拉框 
	$.getJSON("GetJsonServlet",function(data){ 
		//通过循环取出data里面的值       
   		$.each(data,function(i,value){
   			var tempOption = document.createElement("option");   
	        tempOption.value = value.id;
	        tempOption.innerHTML  = value.name;   
	        city.append(tempOption);          
	    });    
  	});
});
  </script>
  </head>
  <body>
  <select id="city">
  	<option>==选择==</option>
  </select>
  </body>
</html>


La classe d'entité a deux attributs :

private Integer id;
private String name;


Ce qui précède peut être obtenu lorsque la page est chargé. Le contenu est lié à la liste déroulante !

Grâce au flux d'impression, c'est une méthode courante d'ajax !

Vous pouvez télécharger le code dont vous avez besoin Télécharger getJson Télécharger le code


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!

Déclaration:
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