Javascript从外部JS文件调用同步函数
我在.js文件中有一个函数,它获取本地存储中存储的信息,并使用同步ajax调用将它们同步回服务器。(集成顺序至关重要,因此需要同步)Javascript从外部JS文件调用同步函数,javascript,ajax,xmlhttprequest,Javascript,Ajax,Xmlhttprequest,我在.js文件中有一个函数,它获取本地存储中存储的信息,并使用同步ajax调用将它们同步回服务器。(集成顺序至关重要,因此需要同步) ,xmlHTTPRequest状态返回0,并且不执行同步。什么可能会阻止xmlHTTPRequest获得200的响应,因为在syncUp()之前运行的唯一代码是几行javascript,这应该在站点进入syncUp()之前执行?状态代码为零有两个原因 从文件协议进行调用 请求发出时,页面正在刷新/导航 在你的情况下,我认为是2。如果使用按钮或链接进行Ajax调用,
,xmlHTTPRequest状态返回0,并且不执行同步。什么可能会阻止xmlHTTPRequest获得200的响应,因为在syncUp()之前运行的唯一代码是几行javascript,这应该在站点进入syncUp()之前执行?状态代码为零有两个原因
在你的情况下,我认为是2。如果使用按钮或链接进行Ajax调用,请确保使用
preventDefault
或returnfalse
取消单击操作状态代码为零有两个原因
在你的情况下,我认为是2。如果使用按钮或链接进行Ajax调用,请确保使用
preventDefault
或returnfalse
按钮onclick事件取消单击操作。将对该特定页面所做的编辑保存在localStorage中,然后尝试将其同步。按钮onclick事件。将对特定页面所做的编辑保存在localStorage中,然后尝试将其同步。现在我觉得自己很愚蠢。忘了删除location=location行,我在那里刷新了页面,而这一切都是以不同的结构进行的。去掉了,现在一切都好了。非常感谢!现在我觉得自己很傻。忘了删除location=location行,我在那里刷新了页面,而这一切都是以不同的结构进行的。去掉了,现在一切都好了。非常感谢!
function syncUp() {
var xml = new XMLHttpRequest();
xml.open("GET", "Default.aspx", true); Also tried setting this to false
xml.onreadystatechange = function() {
if (xml.readyState == 4) {
if (xml.status == 200) {
var items = localStorage.getItem("SyncOrder");
var sync = items.split(",");
for (var i = 0; i < sync.length -1; i++) {
Perform repeated synchronous calls to webservice via AJAX to integrate each item to the server
}
}
}
}
xml.send(null);
}
function saveEdit(item) {
var currData = localStorage.getItem("SyncOrder");
localStorage["SyncOrder"] = currData + "," + item;
syncUp();
}