ajax获取不到新提交的数据
默认用ajax获取列表
$(document).ready(function() {
get_pm(1);
});
// 获取信息
function get_pm(page)
{
var list = '';
$.get(MODULE_URL + 'getpm', {"touid":touid, "page":page}, function(response){
$.each(response.data, function(key, rows) {
list += rows['content'];
});
$(".weibo_list").html(list);
}
// 表单提交函数
function save()
{
var fromuid = $('#fromuid).val();
var msgto = $('#msgtoid').val();
var content = $('#content').val();
var replyid = $('#replyid').val();
var image = $('#image').val();
$.post(MODULE_URL + 'dosend', {"fromuid":fromuid, "msgto":msgto,"replyid":replyid, "content":content, "image":image}, function(response){
if (response.error_code > 0)
{
alert(response.msg+'('+response.error_code+')');
}
else
{
$('.send_success').show();
get_pm(1);
setTimeout(hide_success, 2000);
}
}, 'json');
}
// 隐藏发送成功div
function hide_success()
{
$('.send_success').hide();
// location.reload();
}
现在问题是:
我表单提交成功时调用了get_pm(1);应该是重新请求了数据,
表单提交成功了,数据也加到数据库了,但是新的数据无法显示出来,必须刷新下页面才行,不知道是怎么回事?
是ajax哪里用错了吗?
------解决方案--------------------
1. 用$.post
2. $.get的时候的参加附加一个随机数
------解决方案--------------------
function(response){
if (response.error_code > 0)
{
alert(response.msg+'('+response.error_code+')');
}
else
{
$('.send_success').show();
get_pm(1);
setTimeout(hide_success, 2000);
}
}
你测试一下,如果新加成功后,有没有执行到这个方法里面去。如果没有,那说明这里可能有问题。