ajax 与struts2进行交互,返回json

本文详细介绍了如何使用Struts2框架结合AJAX实现登录表单提交及响应处理,包括JSON数据交互、回调函数应用以及关键配置细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一种是非表单提交,对单个或多个参数请求:


function login()
{
var url = 'tologin.shtml'; //请求的链接
var params = {
name:$('#name').val(), //传递的参数
password:$('#password').val()
};
jQuery.post(url, params, callbackFun, 'json');//json为返回类型,callbackFun是回调函数
}
function callbackFun(data)
{
alert(data.msg);
}



struts2代码集成了spring,配置采用的是注解的方式.代码配置如下:



String name;

string password;

String msg;

//name password msg get set方法省略

@Action(value = "tologin", results = {@Result(name = SUCCESS, type = "json")})
public String alogin()
throws Exception
{

tologin(name,password);//登录方法
//省略。。
this.msg ="登录成功";

return SUCCESS;
}


关键点 方法的type需要配置为 json,传递参数名称对应action类的变量名,要有get,set方法。另外这里也需要配置:

@ParentPackage("json-default")
public class loginAction extends BaseAction

类必须要继承 json-default,否则报错。

另一种是ajax提交表单,适合同一页面多个form表单参数且提交不进行跳转的情况:


$.ajax({
cache: true,
type: "POST",
url:'login.shtml',
data:$('#loginForm').serialize(),// 你的formid
async: false,
error: function(request) {
alert("登录失败");
},
success: function(data) {//回调
alert(data.msg);
}
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值