2012-05-10 37 views
1

我這裏有,節省的main.php內容jQuery的AJAX刪除URL參數

數據。當觀看某個列表中的代碼,我使用的PHP生成一個URL參數。

前:main.php V = 323 & P = 1

現在的問題是,我希望它是刪除當我保存的內容後,我所做的更改。 這裏是我用來保存表單內容的代碼。

$.ajax({ 
    type:'POST', 
    url:'/AJAXsave.php', 
    cache:false, 
    async:true, 
    global:false, 
    dataType:"html", 
    data:$('#form1contents').serialize(), 
    timeout:10000 
}); 

欲被去除的那些參數(ΔV= 323 & P = 1)的AJAX後完成後。

回答

1

只需添加「完全」或「成功」功能,以您的Ajax調用:

$.ajax({ 
    type:'POST', 
    url:'/AJAXsave.php', 
    cache:false, 
    async:true, 
    global:false, 
    dataType:"html", 
    data:$('#form1contents').serialize(), 
    timeout:10000, 
    complete: function (xhr, status) 
    { 
     if(status == 'success') 
      location.href = 'main.php'; 
    } 
}); 

據jQuery的API:完成 - 一個函數被調用時,請求結束(在執行成功和錯誤回調之後)。該函數獲得兩個參數:jqXHR(在jQuery 1.4.x中,XMLHTTPRequest)對象和一個字符串,用於分類請求的狀態(「成功」,「未修改」,「錯誤」,「超時」,「中止」或「parsererror」)。從jQuery 1.5開始,完整設置可以接受一組函數。每個函數都會依次調用。這是一個Ajax事件。 jQuery Ajax

+1

非常感謝。這就是我所需要的。作品像魅力:) – MegaNairda

+0

不客氣:-) –

1

你可以使用這個,但僅適用於Chrome,Safari瀏覽器,FF4 +和IE10pp4 +!

window.history.pushState( 「對象或字符串」, 「標題」, 「/新-URL」);

Reference MDN

+0

太糟糕了,它不會對IE8工作。我需要支持3個主要瀏覽器。 – MegaNairda

+0

所以你只需要用你需要的URL重新加載頁面。我以爲你不想重新加載頁面。 – ijse