前提,导入json-lib-xxx.jar和struts2-json-plugin-xxx.jar
一、jsp核心代码
<span style="font-size:18px;">
<script type="text/javascript" src="<%=basePath%>js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#btn").click(function() {
var rate = $('#rate').attr("value");
<span style="color:#000099;"><span style="background-color: rgb(204, 204, 204);"> $.ajax({
url : '/AJAXTest/test/input_user_save',
type : 'POST',
data : {
rate : rate
},
dataType : 'json',
success : function(data) {
$("#allUser").append("输出了:id:" + data.flag);
}
});</span></span>
});
});
</script>
<!-- 表单部分 -->
<form id="subUserForm">
<input type="text" id="rate" value="1" />
</form>
<div>
<input id="btn" type="button" value="提交" />
</div>
<div id="allUser">input_user:</div>
</span>
这里使用data来给action传递表单的值,此data与fuction(data)不同,fuction里头的data可以理解为action对象,通过该对象可以得到action中的成员变量值。(实现getter方法)二、action
<span style="font-size:18px;">package com.sxu.action;
import com.opensymphony.xwork2.ActionSupport;
public class UserAction extends ActionSupport {
private boolean flag = false;
private String rate;
public String getRate() {
return rate;
}
public void setRate(String rate) {
this.rate = rate;
}
public boolean isFlag() {
return flag;
}
public void setFlag(boolean flag) {
this.flag = flag;
}
public String save() {
System.out.println("dsfd");
flag = true;
System.out.println(rate);
return "INPUT_USER";
}
} </span>
3.struts.xml
<span style="font-size:18px;"><?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
<package name="default" namespace="/test" extends="json-default">
<action name="input_user_*" class="com.sxu.action.UserAction" method="{1}">
<result name="INPUT_USER" type="json"></result>
</action>
</package>
</struts> </span>
这里使用通配符来动态决定调用action的哪个方法.