如何在成功之前刷新Jquery Ajax表单中的页面?

时间:2015-01-02 06:18:36

标签: java jquery ajax spring-mvc

我正在服务器端提交表单并在请求中设置用户对象。之后我希望在jquery ajax的成功方法之前刷新我的页面,以便可以反映更新的值。有人能帮帮我吗? 下面是我的jquery代码:

   function viewMemberProfile(userId){

         document.getElementById("memberId").value=userId;

         $.ajax({
             type: "POST",
             url:'viewMemberProfile.html',
             cache: false,
             data: $("#memberProfileForm").serialize(),

             success: function (data) {
                   $("#memberProfileDiv").reveal({ 
                         animation : 'fade',
                         animationspeed : 400, 
                         closeonbackgroundclick : true,
                         dismissmodalclass : 'close' 
                   });
             }
    });

    return false;

 }

2 个答案:

答案 0 :(得分:0)

执行ajax请求然后重新加载整个页面有什么意义?你强迫你的用户使用双http请求。相反,我建议你编写一个updateUserProfileDiv()函数来完成你需要的所有更改。它将被用作:

function viewMemberProfile(userId){

    document.getElementById("memberId").value=userId;

    $.ajax({
       type: "POST",
       url:'viewMemberProfile.html',
       cache: false,
       data: $("#memberProfileForm").serialize(),

       success: function (data) {

          //write new data to the profile panel
          updateUserProfileDiv($("#memberProfileForm").serialize());

          $("#memberProfileDiv").reveal({ 
             animation : 'fade',
             animationspeed : 400, 
             closeonbackgroundclick : true,
             dismissmodalclass : 'close' 
          });
      }
    });

    return false;

 }

例如(我不知道您的数据):

function updateUserProfileDiv(data){
    $('#username').html(data.username);
    $('#birth').html(data.date_of_birth);
    $('#city').html(data.city);

}

答案 1 :(得分:-1)

success: function (data) {
location.reload();
}

使用它来刷新页面