重新加载页面后调用js函数

时间:2011-12-03 11:59:17

标签: javascript jquery

我有以下代码的js。点击网页上的“ Crate Note ”按钮时会调用createNote()功能

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;创建注释和刷新页面。但是在重新加载页面之后它没有调用showEditNotePopup()函数。有没有办法在不使用AJAX的情况下实现这一目标。

1 个答案:

答案 0 :(得分: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();就像魅力一样。