数码资讯
ajax异步调用方法中全局变量分配失败的原因及解决方案分析
调用一个jQuery的Ajax方法时,我们有时需要方法返回一个值或赋值给一个全局变量,但是我们发现程序结束后并没有得到我们想要的值,那么可能是因为你使用的是Ajax异步调用异步:真正的(默认),这样作为: 复制代码代码如下所示: 功能managecommenttext(文本){ var结果=文本;
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
调用一个jQuery的Ajax方法时,我们有时需要方法返回一个值或赋值给一个全局变量,但是我们发现程序结束后并没有得到我们想要的值,那么可能是因为你使用的是Ajax异步调用异步:真正的(默认),这样作为:
复制代码代码如下所示:
功能managecommenttext(文本){
var结果=文本;
$ ajax({
数据:获取
网址:getcomments .aspx
数据:gettextcommenttext型= =+文字,
缓存:false,
异步:假,
成功:函数(数据){
结果=数据;
}
})
返回结果;
上述方法是同步调用Ajax,并对方法的调用返回的数据值时得到的结果是分配的结果。如果被设置为异步:真,
直到获得数据值才返回结果。
另一种解决方案是直接将代码写入成功方法(根据您的业务,并不是所有的代码都可以直接写入成功)。
注意:如果你设置为异步:假的,你失去了Ajax异步的优点。
复制代码代码如下所示:
功能managecommenttext(文本){
var结果=文本;
$ ajax({
数据:获取
网址:getcomments .aspx
数据:gettextcommenttext型= =+文字,
缓存:false,
异步:假,
成功:函数(数据){
结果=数据;
}
})
返回结果;
上述方法是同步调用Ajax,并对方法的调用返回的数据值时得到的结果是分配的结果。如果被设置为异步:真,
直到获得数据值才返回结果。
另一种解决方案是直接将代码写入成功方法(根据您的业务,并不是所有的代码都可以直接写入成功)。
注意:如果你设置为异步:假的,你失去了Ajax异步的优点。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。