Heim  >  Artikel  >  Web-Frontend  >  将json数据提交到action并解析

将json数据提交到action并解析

高洛峰
高洛峰Original
2016-11-02 14:51:561488Durchsuche

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;
	}
}


Stellungnahme:
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
Vorheriger Artikel:jquery.datepair日期时分秒选择器Nächster Artikel:Flex 弹性布局