Rumah  >  Artikel  >  hujung hadapan web  >  将json数据提交到action并解析

将json数据提交到action并解析

高洛峰
高洛峰asal
2016-11-02 14:51:561488semak imbas

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


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:jquery.datepair日期时分秒选择器Artikel seterusnya:Flex 弹性布局