调用函数后刷新页面

时间:2015-10-08 21:55:42

标签: javascript html

有没有办法让我可以运行一个函数,然后调用window.location.reload()来刷新页面?目前,当我这样做时,页面很新鲜,但功能没有运行。

function postComment() {
   var name;
   if (document.getElementById("yourName").value == "") {
      name = "(Anonymous)";
   } else  {
      name = document.getElementById("yourName").value;
   }
   var uri = "http://tgg.tcs.com/AP/Open/Service.svc/comment?name=" + name;
   var xhr = new XMLHttpRequest();
   xhr.open("POST", uri, true);
   xhr.setRequestHeader("Content-Type", "application/json;charset=UTF-8")

   xhr.onreadystatechange = function() {
    if(http.readyState == 4 && http.status == 200) {
        alert(xhr.responseText);
    }
   }
   xhr.send(JSON.stringify(document.getElementById("comment").value));

}

1 个答案:

答案 0 :(得分:0)

您需要使用回调

function yourFunction(arg, callback) {
    doSomeStuff(arg);
    callback();
}

yourFunction('argument', window.location.reload);

如果soSomeStuff函数是异步的,则必须执行

function yourFunction(arg, callback) {
    doSomeStuff(arg, callback);
}

yourFunction('argument', window.location.reload);

另外,如果你刷新页面,你也会刷新脚本,所以它取决于你的函数做什么,如果函数生成的数据必须是持久的,你可能需要一个cookie