您的位置:首页 > Web前端 > JavaScript

ajax(第一篇)将json数据提交到action并解析

2016-11-01 17:13 344 查看
<%@ 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;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  struts ajax
相关文章推荐