2011-12-03 106 views
2

我有js以下代碼。當我點擊網頁重新加載頁面後調用js函數

function createNote() { 
    alert('page created');  // for example note is created here 
    window.location = document.URL; // refresh page to show new added note 
    showEditNotePopup(); 
} 

function showEditNotePopup() { 
    alert('show note edit page'); // for example edit note popup shown here 
} 

上面代碼中的「木箱注意」按鈕正常工作和創建筆記,也使用window.location = document.URL;清爽頁面createNote()函數被調用。但重新加載頁面後,它不會調用showEditNotePopup()函數。有什麼方法可以在不使用AJAX的情況下實現這一點。

+0

刷新使用只是:location.reload() – mgraph

回答

5

這裏發生的是,您正在使用window.location向服務器發送全新的HTTP請求。因此,這是不可能的。但是,有一些解決方法。我會在這裏寫下它們:

一種方法是發送另一個參數到服務器window.location。例如:

window.location = document.URL + "?popup=true"; 

現在,在服務器上,檢查此參數。如果存在,則創建一個自調用函數來顯示新創建的筆記的信息。

另一種方法是使用ajax,而不是完整的請求。這樣,你的功能將是:

function createNote() { 
    alert('page created');   
    // use ajax to store new page, and update the UI accordingly 
    showEditNotePopup(); 
} 

現在,showEditNotePopup();工程就像一個魅力。

相關問題