struts2自动封装ajax提交过来的数据

15 篇文章 0 订阅
10 篇文章 0 订阅

情况是这样的:

Action:

public class HomeMemberAction extends ParentAction{

private HomeMember homeMember;

//查询方法

public String homeMemberList(){
System.out.println("===" + homeMember.getMemberName());
homeMemberList = this.homeMemberService.getHomeMemberList();
return Action.SUCCESS;
}


public HomeMember getHomeMember() {
return homeMember;
}


public void setHomeMember(HomeMember homeMember) {
this.homeMember = homeMember;
}

}


配置文件:

<action name="homeMemberList" class="com.issweb.homemember.web.HomeMemberAction" method="homeMemberList">
<result type="json">
<!-- 不序列化Action里为null的字段 -->
<param name="excludeNullProperties">true</param>
<param name="root">homeMemberList</param>
</result>
</action>


js:

function loadHomeMemberData(){
//组装参数
var memberName = $("#memberName").val();
var sex = $("#sex").val();
var age = $("#age").val();
var nickName = $("#nickName").val();

//请求后台
$.ajax({
url:"/member/homeMemberList.action",
type:"post",
dataType:"json",
data:{
"homeMember.memberName":memberName,
"homeMember.sex":sex,
"homeMember.age":age,
"homeMember.nickName":nickName
},
beforeSend:function(){
$('#loading').show(); //请求之前,展显进度条
},
complete:function(){
$('#loading').hide(); //请求之后,隐藏进度条
},
success:createTable
});
}

描述:

ajax提交数据到Action中,如果想让提交的数据自动封装到homeMember 类中,需要在提交的时候,做以下手脚:

data:{
"homeMember.memberName":memberName,
"homeMember.sex":sex,
"homeMember.age":age,
"homeMember.nickName":nickName

},

以Action对象中的属性名字做为前缀。

千万要注意:js中获得参数值方式一定要正确,不然后台获取不到参数,例如:var memberName = $("#memberName").val();

如果写成:var memberName = $("memberName").val(); 前台也不会报错,后台也获取不到值,很不好确定是哪里的原因。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

绿竹痕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值