ajax局部刷新

jsp页面利用jQuery.post(url,data,success(data, textStatus, jqXHR),dataType)
[table]
|参数 | 描述|
|url |必需。规定把请求发送到哪个 URL。|
|data |可选。映射或字符串值。规定连同请求发送到服务器的数据。|
|success(data, textStatus, jqXHR) |可选。请求成功时执行的回调函数。|
|dataType | 可选。规定预期的服务器响应的数据类型。 默认执行智能判断(xml、json、script 或 html)。|
[/table]
该函数是简写的 Ajax 函数,等价于:

$.ajax({
type: 'POST',
url: url,
data: data,
success: success,
dataType: dataType
});

jsp:

function sendReply() {
var url = document.forms[0].action + "?m=insertRep";
var userId = jQuery('#userId').val();
var msgId = jQuery('#msgId').val();
var info = jQuery('#info').val();
if (isEmpty(info)) {
parent.window.jAlert("回复内容不能为空!");
/****如果这个页面是内嵌框架,那么需要加上parent需找到父窗口,在父窗口中弹出框框。********/
} else {
var params = {
userId : userId,
msgId : msgId,
info : info
};
jQuery.post(url, params, sendReplyCallback, 'json');
}
}
function sendReplyCallback(data, status) {
if (status == "success") {
if (data == "0") {
parent.window.jAlert("操作成功!", "操作", function(flag) {
if (flag) {
parent.window.location.href = "userIndex.html";//定向,刷新页面
}
});
} else {
parent.window.location.href = "userIndex.html";
}
} else if (status == "error") {
parent.window.jAlert("操作异常!");
} else {
parent.window.jAlert(status);
}
}

后台Action处理:



String msgId = iframeUserDynamicReplyForm.getMsgId();
String info = iframeUserDynamicReplyForm.getInfo();
msgId = msgId == null ? "" : msgId.trim();
info = info == null ? "" : info.trim();
int co = UserMessageService.sendReply(sqlSession,loginUserId, new BigDecimal(msgId), info);
Gson gson = new Gson();//需要导入gson-2.0.jar包
response.setContentType("text/json; charset=utf-8");
response.setHeader("Cache-Control", "no-cache");
response.getWriter().write(gson.toJson(co));
return null;

补充一下,如果获取的json数据是对象,那么就用下面的格式,如data为User对象

$.post("test.php", { "func": "getNameAndTime" },
function(data){
alert(data.name); // John
console.log(data.time); // 2pm
}, "json");

如果获取的json数据是集合对象,那么就用下面的格式,如data为List<User>对象
JSONObject data = new JSONObject();
data.put("resultList", users);
response.getWriter().write(data.toString());
return null;

$.post("test.php", { "func": "getNameAndTime" },
function(data){
alert(data.resultList[0].name); // John
console.log(data.resultList[0].time); // 2pm
$.each(data,function(i){
alert(data.resultList[i].name);
});
}, "json");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值