如题,在使用Echarts的地图时,需要为图表填充数据。但是如果写在success的回调函数中,代码很长并且有大量重复,显然不是正确的打开方式。因此定义了一个外部变量,使用Ajax请求数据,然后在success中为变量赋值。
var result;
$.ajax({
url:'getDeclareInfo.json',
type:'POST',
data : {'strCondition' : condition},
success:function(data){
result = data;
但是运行结果和我预想中的并不一样,浏览器提示 result is undefined,data的值没有赋给result。后来发现因为发送的是异步请求,浏览器不会等待请求结果,而是顺序执行JS,所以当执行到使用result时会提示 result is undefined。
async
类型:Boolean
默认值: true。默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。
注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
可以有两种解决方案:
上面分别是两个ajax请求得到的数据其中,数据的关联性为:上段数据的varName 等于下段数据的variableName! 现在我需要将这些数据合并到一个div并将值放入到input便签:
1. 将Ajax得到的data数据赋给全局变量
首先自定义一个空的全局变量值:
然后处理ajax请求:
关键一点就是讲ajax的异步加载关闭,更改为同步加...
jQuery 回调函数是指在特定的事件或条件触发时,执行的函数。例如,在 jQuery 的 AJAX 函数中,我们可以设置回调函数,在服务器完成响应后执行。例如,在下面的代码中,我们将回调函数作为参数传递给 jQuery 的。回调函数通常作为参数传递给其他函数,然后在特定的事件触发时被调用。在这个例子中,当服务器完成响应后,回调函数就会被执行。
先来看一代码ajaxfunctioncheckoldpass($pass){$.ajax({type:'get',url:'/admin/check',data:{'password':$pass},dataType:'json',success:function(data){console.log(data)}});console.log(123);}这个运行结果是:json...
需将ajax设置为同步操作,则会先给变量赋值再走后面的代码。 var err=0
$.ajax({
url: 'http://www.xjpattern.com/index.php/Home/Login/login',
async: false,
type: "post",
dataType: "
jQuery 中,会遇到$.get(url,data,callback,type) 或 $.post(url,data,callback,type) 返回值给全局变量赋值的问题:
<script language="JavaScript">
var count= 1;
$.post("<%=path%>/AdminCenter/SysFunction/GetOrderNo",
{ parentCode: pc },
我们在用JQuery的Ajax从后台提取数据后想把它赋值给全局变量,但是却怎么都赋不进,为什么呢? 原因其实很简单,我们用的Ajax是异步操作,也就是说在你赋值的时候数据还没提取出来,你当然赋不进去,所以只要改成同步操作就行~ 方法1:先设置同步在进行Ajax操作 ? //在全局或某个需要的函数内设置Ajax异步为false,也就是同步
$.ajaxSetup({
async...
在我们写项目的过程中,难免会用到Ajax的异步提交。那么有时候的需求可能是这样的。
我们想把回调函数的data中的值赋值给外部定义的变量,但往往可能发现根本就没有赋值。
//创建一个flag变量
var flag="";
$.ajax(
url:"请求的url地址",
dataType:"返回的数据格式",
data:{参数},
success:function(data){
1、回调函数给变量赋值
function removeByAppId(leftValue){
var strSource = flowfrm.iamFlowsScope.value;
DWREngine.setAsync(false);
flowDefAJAX.removeByAppId(leftValue,strSource,callBackFun)...
我正在创建一个新的功能,我在其中根据从Ajax返回的Json数据构建网格。我决定将这个功能封装在一个函数中,所以当我添加/更新/删除时,我可以成功检索到一个新的数据表示。我遇到的问题是我想填充一个全局数组,但是一旦我的使用AJAX的函数结束,我有一个数组,但没有数据。当所有的代码都在AJAX调用中时,这不是问题,但是一旦我尝试将它分离到它自己的函数中,它就不能按预期工作。var DataArray...