在JQuery Post之后,location.reload()不会在Chrome中使用新数据更新页面

时间:2014-07-03 15:46:05

标签: jquery ajax google-chrome

使用jQuery.post()成功将数据发布到ajax.php后,我想刷新页面以显示更新的记录。但是...... location.reload() 不会更新Chrome中.post() 的网页数据。它仅在浏览器刷新(F5)时更新。

我试过了:

  1. window.location.reload();
  2. window.location.reload(真);
  3. location.reload();
  4. location.reload(真);
  5. document.location.reload();
  6. document.location.reload(真);
  7. window.location.refresh();
  8. 这似乎是持久的Chrome问题https://code.google.com/p/chromium/issues/detail?id=6429

    我如何克服这个错误?

    HTML:

    <table>
       <tr>
          <th>#</th>
          <th>Item Name</th>
       </tr>
       <tr>
          <td>1</td>
          <td>First Item</td>
       </tr>
       <!-- new record after reload goes here -->
    </table>
    

    的JavaScript:

    function addItem() {
      var data_item_name = "data to be posted and shown after reload";
      jQuery.post("ajax.php",
         {item_name: data_item_name},
         function(data){
            console.log(data);
         }
      );
      window.location.reload();
    }
    

    谢谢。

2 个答案:

答案 0 :(得分:2)

在帖子完成之后,请不要重新加载。

$.post(url, data, function () {
    // reload here!
});

答案 1 :(得分:-1)

试试这个:

window.location.reload(true);

希望它对您有用,如果没有,祝您找到解决方案! ;)