2015-06-04 60 views
0

我正在使用ajax表單將發佈數據發送到php文件。並希望重新加載當前頁面與該PHP的變量響應。其實我需要在成功響應後只更新地址欄中的網址。這是我的代碼:如何用ajax響應中的變量重新加載當前頁面?

type: 'POST', 
    success: function(data){ 
     var data; 
     if(data && data != 'error') { 
      window.history.pushState("string", "Title", "article.php?do=$_GET[do]&token='+data+'"); 
     }else{ 
      $('#saveStts').html('error'); 
     } 

我從PHP響應變量是一個時間戳像1433428606。我需要這個號碼重新加載一個頁面,完整的網址是: www.test.com/admin/article.php?do=edit&token=1433428606。我試過但總是用data重新加載,而不是從服務器的時間戳。請指教。

+3

如果你重裝和去到一個新的URL,你不需要阿賈克斯,只是做普通帖子。 –

+0

成功響應後您可以調用window.location.assign(url) – Microshine

+0

Duplicate:[修改URL而不重新加載頁面](https://stackoverflow.com/questions/824349/modify-the-url-without-reloading-頁面) – Roberto

回答

0

這種狀態推送可以在Chrome,Safari,FF4 +和IE10 +中完成。

你現在做的方式看起來不錯,你有什麼麻煩嗎? window.history.pushState(「object or string」,「Title」,「/ new-url」);

有一個在這裏的主題很好的反應:Updating address bar with new URL without hash or reloading the page

+0

事情是我無法從PHP文件獲取響應代碼來重新加載URL。響應代碼是一個時間戳「1433418642」,我需要這個數字來重新加載頁面。完整的網址是:http://www.test.com/admin/edit.php?id = xxx&token = 1433418642' – Wilf

+0

爲什麼你重新啓動/覆蓋變量數據?你可以刪除「var data」。如果在刪除該行後仍然存在問題,請分解數據,例如console.log(data)並查看返回的內容。 –

相關問題