有没有办法让我可以运行一个函数,然后调用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));
}
答案 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