Heim > Web-Frontend > js-Tutorial > Senden Sie JSON-Daten an die Aktion und analysieren Sie sie

Senden Sie JSON-Daten an die Aktion und analysieren Sie sie

高洛峰
Freigeben: 2016-11-02 14:51:56
Original
1548 Leute haben es durchsucht

ajax将json数据提交到action并解析

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="json2.js"></script>
<script type="text/javascript">
	var myAjaxObject;
	function AjaxTransferText() {
		var BigText = document.getElementById("BigText").value;
		var AjaxTransferObjectRef = new AjaxTransferObject("username", "password",
				10, BigText);
		var JSONString = JSON.stringify(AjaxTransferObjectRef);
		if(window.ActiveXObject){
			myAjaxObject = new ActiveXObject("Microsoft.XMLHTTP");
		}else {
			myAjaxObject = new XMLHttpRequest();
		}
		
		var urlString = "jsonString=" + JSONString;
		alert(urlString);
		
		myAjaxObject.open("POST", "getJSON.action"+"?timestamp" + new 
				Date().getTime(),true);
		myAjaxObject.setRequestHeader("Content-Type",
									  "application/x-www-form-urlencoded")
		myAjaxObject.send(urlString);
	}
	
	function AjaxTransferObject(username, password, age, BigText){
		this.username = username;
		this.password = password;
		this.age = age;
		this.BigText = BigText;
	}
	function AjaxTransferTextByget(){
		var BigText = document.getElementById("BigText").value;
		var AjaxTransferObjectRef = new AjaxTransferObject("username", "password",
				10, BigText);
		var JSONString = JSON.stringify(AjaxTransferObjectRef);
		if(window.ActiveXObject){
			myAjaxObject = new ActiveXObject("Microsoft.XMLHTTP");
		}else {
			myAjaxObject = new XMLHttpRequest();
		}
		
		var urlString = "jsonString=" + JSONString;
		alert(urlString);
		
		myAjaxObject.open("POST", "getJSON.action"+urlString,true);
		myAjaxObject.setRequestHeader("Content-Type",
									  "application/x-www-form-urlencoded")
	}
</script>
</head>
<body>
	<textarea rows="5" cols="45" id="BigText"></textarea>
	<br/>
	<input type="button" value="test" onclick="AjaxTransferText()">
	<input type="button" value="test" onclick="AjaxTransferTextByget()">
</body>
</html>

Action代码如下:
package controller;

import com.opensymphony.xwork2.ActionSupport;

import net.sf.json.JSONObject;

public class GetJSON extends ActionSupport{
	private String jsonString;
	public String getJsonString(){
		return this.jsonString;
	}
	
	public void setJsonString(String jsonString){
		this.jsonString = jsonString;
	}
	
	@Override
	public String execute() throws Exception {
		System.out.println(jsonString);
		JSONObject json = JSONObject.fromObject(jsonString);
		System.out.println("username=" + json.get("username"));
		System.out.println("password=" + json.get("password"));
		System.out.println("age=" + json.get("age"));
		System.out.println("BigText=" + json.get("BigText"));
		return null;
	}
}
Nach dem Login kopieren


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage