Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript函数在ajax请求之前执行_Javascript_Jquery_Html_Wcf - Fatal编程技术网

Javascript函数在ajax请求之前执行

Javascript函数在ajax请求之前执行,javascript,jquery,html,wcf,Javascript,Jquery,Html,Wcf,我有一个函数用于显示用户添加到其购物车的购物车列表 首先,当用户尚未登录时,从localStorage显示项目 显示的项目将更改其详细信息,只要用户成功登录,这些详细信息都来自web服务 由于每个用户的价格水平不同,localStorage和web服务中的项目详细信息可能不同。所以我想比较localStorage中的items detail和web服务中的items detail,如果两者不同,则删除localStorage中的所有数据,并将从web服务获取的新数据改为localStorage

我有一个函数用于显示用户添加到其购物车的购物车列表

首先,当用户尚未登录时,从localStorage显示项目

显示的项目将更改其详细信息,只要用户成功登录,这些详细信息都来自web服务

由于每个用户的价格水平不同,localStorage和web服务中的项目详细信息可能不同。所以我想比较localStorage中的items detail和web服务中的items detail,如果两者不同,则删除localStorage中的所有数据,并将从web服务获取的新数据改为localStorage

以下是我尝试过的:

this.showItem = function(){

 var cartObject = self.getCartObjectFromLocalStorage(); //get all data from localStorage

 var result = "";
 $.ajax({
     url:"urlstring",
     type:"POST",
     dataType:"json",
     contentType: "application/json",
     data : JSON.stringify(cartObject),
     success:function(res){
        result = res;
     },
     error:function(res){
        result="";
     },
     async : false
 });

 if((JSON.stringify(cartObject.CartLists) === JSON.stringify(result) == false)){ //if data in localStorage not equal data get from web service
     self.deleteAllItemInLocalStorage();
     window.localStorage.setItem(localStorage_.Cart,serializeObjToJSON(result));
 }
 return result;
}
当函数
deleteAllItemInLocalStorage()执行时,从web服务获取的
结果将为空。但是我想要的是
result
仍然存储从web服务获取的数据

我如何删除localStorage中的所有数据,但结果是来自web服务的数据


谢谢。

听起来很多这样的逻辑应该在服务器Domo中实现,然后再次从服务器获取数据,一切都应该正常:)@HanletEscaño:从服务器获取数据很好,只是我的删除功能在ajax请求工作之前工作,所以当数据格式错误时ajax将出错。