社区
Ajax
帖子详情
一个页面,两次AJAX调用,产生的错误如何解决
wggipkhgef
2009-01-25 03:15:10
我在一个页面内,有两段js程序通过ajax向两个不同的页面请求数据,结果只返回第一次请求的数据,本来两个地方要显示不同的返回数据,结果两个位置都显示同一次请求返回的数据,请问如何解决?按理说,一个页面不可能只允许一次ajax调用啊,我把其中一个地方改为onchange,onclick...之类的事件就又正常,没有问题,但如果没有事件,是直接请求的话,就只返回第一次请求的数据
...全文
556
7
打赏
收藏
一个页面,两次AJAX调用,产生的错误如何解决
我在一个页面内,有两段js程序通过ajax向两个不同的页面请求数据,结果只返回第一次请求的数据,本来两个地方要显示不同的返回数据,结果两个位置都显示同一次请求返回的数据,请问如何解决?按理说,一个页面不可能只允许一次ajax调用啊,我把其中一个地方改为onchange,onclick...之类的事件就又正常,没有问题,但如果没有事件,是直接请求的话,就只返回第一次请求的数据
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
DAMINGSHANG
2009-01-27
打赏
举报
回复
1,页面不可能只允许一次ajax调用
2,因为你的代码不是很全,所以暂时只能给你一个解决方案,如下
function aa()
{
createXHR();
url="aa.asp";
xmlhttp.open("GET", url, true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("aa").innerHTML = xmlhttp.responseText;
bb();//在这里加上bb的执行,onload时不直接调用。
}
}
ajax.send(null);
}
function bb()
{
createXHR();
url="bb.asp";
xmlhttp.open("GET", url, true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("bb").innerHTML = xmlhttp.responseText;
}
}
ajax.send(null);
}
午夜咖啡男
2009-01-25
打赏
举报
回复
按照你的逻辑,貌似之创建了一个全局的请求对象,当然有问题
wggipkhgef
2009-01-25
打赏
举报
回复
谢谢大哥,我回去测试一下,年后再来结贴,呵呵
neo_yoho
2009-01-25
打赏
举报
回复
怎么一会儿xmlhttp一会儿ajax的。。。
function createXHR()
{
//......建立一个XMLHttpRequest对象
return xmlhttp;
}
function aa()
{
var xmlhttp
= createXHR();
url="aa.asp";
xmlhttp.open("GET", url, true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("aa").innerHTML = xmlhttp.responseText;
}
}
xmlhttp.send(null);
}
wggipkhgef
2009-01-25
打赏
举报
回复
上面代码写快了,有点错误
getElementById("aa")改为getElementById("a")
getElementById("bb")改为getElementById("b")
ajax.send(null)改为xmlhttp.send(null)
wggipkhgef
2009-01-25
打赏
举报
回复
我现在是在网吧上网,没办法贴代码,不过可以简要的说明一下逻辑
HTML部分
<div id='a'></div><script type='text/javascript'>aa();</script>
<div id='b'></div><script type='text/javascript'>bb();</script>
JS部分
function createXHR()
{
//......建立一个XMLHttpRequest对象
}
function aa()
{
createXHR();
url="aa.asp";
xmlhttp.open("GET", url, true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("aa").innerHTML = xmlhttp.responseText;
}
}
ajax.send(null);
}
function bb()
{
createXHR();
url="bb.asp";
xmlhttp.open("GET", url, true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("bb").innerHTML = xmlhttp.responseText;
}
}
ajax.send(null);
}
---------------------------------------
得到的结果是只返回aa()函数内的aa.asp返回数据,id="a"和id="b"的div内显示同样的值,假如HTML部分改成如下:
<div id='a'></div><script type='text/javascript'>aa();</script>
<div id='b'><a href='#' onclick='javascript:bb();'>点击获得数据</a></div>
这样id="a"的部分可以显示返回值,通过点击id="b"内的"点击获得数据"也可以让id="b"的div获得正确返回值
neo_yoho
2009-01-25
打赏
举报
回复
不知道代码是什么样子的
反正要注意用私有变量去创建请求和回调函数的写法
java源码包---java 源码 大量 实例
5个目标文件,演示Address EJB的实现,创建
一个
EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回
一个
经过初始化的上下文,用client的getHome()函数
调用
Home接口...
一个
页面
里面两个
ajax
,
一个
页面
多个
ajax
请求
你是在
一个
页面
多个子
页面
,然后每个子
页面
里面使用了
一个
回调函数吧?wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww由于include...
Ajax
同步和异步
问题描述:前后
两次
独立
调用
Ajax
获取后台数据,第二次
调用
获取数据时需要拿第一获取的数据当参数,因此有时显示的数据是正确的,有时会出现
错误
。
解决
:第一次
调用
Ajax
时,要设置async:false(同步) ,必须第一次...
jquery一次处理多个
ajax
请求,利用JQUERY实现多个
AJAX
请求等待的实例
可选地,当
Ajax
调用
返回
错误
时,
调用
另
一个
回调函数。但是,该功能不能根据这些请求的结果进行多个
Ajax
请求和注册回调函数。一种情况是,网页使多个
Ajax
请求在禁用用户交互时收集
页面
不同部分的数据。该
页面
仅在
页面
...
ajax
调用
接口数据错乱的原因及
解决
方法
前段时间在做项目的时候遇到
一个
问题,在开发webapp的时候使用
ajax
调用
后端接口的时候,出现了接口数据错乱的问题,现在总结一下问题描述: 同
一个
页面
同时
调用
多个接口:A、B、C、D、E,正常返回结果应该是A-a, B-...
Ajax
52,787
社区成员
25,335
社区内容
发帖
与我相关
我的任务
Ajax
Web 开发 Ajax
复制链接
扫一扫
分享
社区描述
Web 开发 Ajax
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章