Jquery analysiert den Datenprozesscode_jquery im Json-Format
May 16, 2016 pm 04:33 PMHeute habe ich etwas über Json (JavaScript Object Notation) gelernt, ein leichtes Datenaustauschformat. Für Menschen leicht zu lesen und zu schreiben. Es ist auch für Maschinen einfach zu analysieren und zu generieren. JSON verwendet ein völlig sprachunabhängiges Textformat, verwendet aber auch Konventionen ähnlich der C-Sprachfamilie (einschließlich C, C, C#, Java, JavaScript, Perl, Python usw.). Diese Eigenschaften machen JSON zu einer idealen Datenaustauschsprache.
JSON besteht aus zwei Strukturen:
Eine Sammlung von Name/Wert-Paaren. In verschiedenen Sprachen wird es als Objekt, Datensatz, Struktur, Wörterbuch, Hash-Tabelle, verschlüsselte Liste oder assoziatives Array verstanden.
Eine geordnete Liste von Werten. In den meisten Sprachen wird es als Array verstanden.
Dies sind gängige Datenstrukturen. Tatsächlich unterstützen sie die meisten modernen Computersprachen in irgendeiner Form. Dadurch ist es möglich, ein Datenformat zwischen Programmiersprachen auszutauschen, die ebenfalls auf diesen Strukturen basieren.
JSON hat die folgenden Formen:
Ein Objekt ist eine ungeordnete Sammlung von Name/Wert-Paaren. Ein Objekt beginnt mit „{“ (linke Klammer) und endet mit „}“ (rechte Klammer). Auf jeden „Namen“ folgt ein „:“ (Doppelpunkt); „Name/Wert“-Paare werden durch ein „“, (Komma) getrennt.
Okay, reden wir keinen Unsinn und gehen wir direkt zu den Beispielen über! ! Das Design dieser kleinen Demo ist so. Die Seite index.jsp greift auf das serverseitige Servlet zu. Die übertragenen Daten sind im JSON-Format Im Json-Format werde ich diesen Artikel schreiben, was einer Täuschung des Publikums gleichkommt!
Code auf der index.jsp-Seite (zuerst einfache, dann schwierige Reihenfolge):
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); ://" request.getServerName() ":" request.getServerPort() path "/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> < html> <base href="<%=basePath%>">Meine JSP 'index.jsp' Startseite</title> content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"<!-- <link rel="stylesheet " type="text/css" href="styles.css" mce_href="styles.css"> --> <mce:script type="text/javascript" src="js/jquery-1.3.2 .js" mce_src="js/jquery-1.3.2.js"></mce:script> <mce:script type="text/javascript" src="js/login.js" mce_src="js /login.js"></mce:script> </head> <body> <table> <tr id="head"> <td>lastname</td> <td> Vorname</td> </td> </tr> td1"></td> <td id="td2"></td> </tr> <tr id="tr1"> <td id="td0">< ;/td> <td id="td1"></td> ;td id="td0"></td> <td id="td1"></td> ;/table> </body> </html>
Dann gibt es zwei Bean-Programme: Person und Adresse. Diese beiden Klassen dienen hier hauptsächlich dazu, die Art und Weise, wie Json Daten überträgt, und das Format der übertragenen Daten besser widerzuspiegeln
Paket com.wk; öffentliche Klasse Person { private String firstName; privater String lastName; private Adresse; Adresse; öffentliche Person() { super(); } public Person(String firstName, String lastName, Address address) { super(); this.firstName = firstName; this.lastName = lastName; this.address = Adresse; } public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } public Address getAddress() { return address; } public void setAddress(Address address) { this.address = address; } } package com.wk; öffentliche Klassenadresse { private int id; privates String-Detail; öffentliche Adresse() { super(); } public Address(int id, String detail) { super(); this.id = id; this.detail = detail; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getDetail() { return detail; } public void setDetail(String detail) { this.detail = detail; } }
Servlet代码:
Paket com.servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayList; java.util.List importieren; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.wk.Address; import com.wk.Person; öffentliche Klasse PersonServlet erweitert HttpServlet{ private static final long serialVersionUID = 1L; static StringBuffer bf; @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setContentType("text/html;charset=utf-8"); Liste<Person> personen = new ArrayList<Person>(); PrintWriter out = resp.getWriter();
Person person1 = neue Person(); Adresse a1 = neue Adresse(); a1.setId(1); a1.setDetail("河北省"); person1.setFirstName("瓜"); person1.setLastName("傻"); person1.setAddress(a1); personen.add(person1);
Person person2 = neue Person(); Adresse a2 = neue Adresse(); a2.setId(2); a2.setDetail("Ansicht"); person2.setFirstName("蛋"); person2.setLastName("笨"); person2.setAddress(a2); personen.add(person2);
Person person3 = neue Person(); Adresse a3 = neue Adresse(); a3.setId(1); a3.setDetail("湖南省"); person3.setFirstName("痴"); person3.setLastName("白"); person3.setAddress(a3); personen.add(person3);
bf = new StringBuffer();
/* 组装成json格式的字符串 * {"person":[ * {"firstname":", "lastNmae"::", "address": {"id::", "detail::" }}, * ]} */ bf.append("{"person":["); for(Person person : personen) { bf.append("{"firstname":"").append(person.getFirstName()).append("",""). append("lastname":""). append(person.getLastName()).append("","). append(""address":").append("{"id":"").append(person.getAddress().getId()).append("",""). append("detail": "").append(person.getAddress().getDetail()).append(""").append("}},"); } //将最后一个逗号去掉 int length = bf.length(); String newStr = bf.substring(0, length-1); bf = new StringBuffer(); bf.append(newStr);
bf.append("]}"); out.println(bf); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doGet(req, resp); }
下面的代码就是Jquery如何解析Json数据了, 也是这一个demo的核心代码了:
$(document).ready(function() { $("table").css("border-color", "lightblue").css("border-style", "solid"); $("#head" ).css("background-color", "lightblue"); $.ajax({ // 后台台理程序 URL: „Json“, // 数据发送方式 type: „post“, // 接受数据格式 dataType: „ json", timeout : 20000,// 设置请求超时时间(毫秒)。 // 请求成功后回调函数。 success : function(dataObj) { var member = eval(dataObj); // alarm(member.person[1] .firstname); $(dataObj.person).each(function(i, per) { $("#tr" i).find("#td0").html(per.lastname); $("#tr" i).find("#td1").html(per.firstname); $("#tr" i).find("#td2") .html(per.address.detail }); ; });
再贴一个运行效果吧!!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Ersetzen Sie Stringzeichen in JavaScript

Benutzerdefinierte Google -Search -API -Setup -Tutorial

8 atemberaubende JQuery -Seiten -Layout -Plugins

Erstellen Sie Ihre eigenen AJAX -Webanwendungen

Verbessern Sie Ihr JQuery -Wissen mit dem Quell Betrachter

10 Mobile Cheat Sheets für die mobile Entwicklung
