社区
Ajax
帖子详情
一个页面,两次AJAX调用,产生的错误如何解决
wggipkhgef
2009-01-25 03:15:10
我在一个页面内,有两段js程序通过ajax向两个不同的页面请求数据,结果只返回第一次请求的数据,本来两个地方要显示不同的返回数据,结果两个位置都显示同一次请求返回的数据,请问如何解决?按理说,一个页面不可能只允许一次ajax调用啊,我把其中一个地方改为onchange,onclick...之类的事件就又正常,没有问题,但如果没有事件,是直接请求的话,就只返回第一次请求的数据
...全文
566
7
打赏
收藏
一个页面,两次AJAX调用,产生的错误如何解决
我在一个页面内,有两段js程序通过ajax向两个不同的页面请求数据,结果只返回第一次请求的数据,本来两个地方要显示不同的返回数据,结果两个位置都显示同一次请求返回的数据,请问如何解决?按理说,一个页面不可能只允许一次ajax调用啊,我把其中一个地方改为onchange,onclick...之类的事件就又正常,没有问题,但如果没有事件,是直接请求的话,就只返回第一次请求的数据
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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
打赏
举报
回复
不知道代码是什么样子的
反正要注意用私有变量去创建请求和回调函数的写法
一个
页面
里面两个
ajax
,
一个
页面
多个
ajax
请求
你是在
一个
页面
多个子
页面
,然后每个子
页面
里面使用了
一个
回调函数吧?wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww由于include加载
页面
时先后难分,而且这样XMLHttpRequest对象就只剩
一个
了...
Ajax
同步和异步
最近做的项目里,遇到了关于连续
两次
调用
Ajax
的问题。 问题描述:前后
两次
独立
调用
Ajax
获取后台数据,第二次
调用
获取数据时需要拿第一获取的数据当参数,因此有时显示的数据是正确的,有时会出现
错误
。
解决
:第一次
调用
Ajax
时,要设置async:false(同步) ,必须第一次执行完成后,才能执行第二个
Ajax
。
Ajax
同步和异步的区分 同步:JS代码加载到当前
AJAX
的时候会把
页面
里所有的代码...
jquery一次处理多个
ajax
请求,利用JQUERY实现多个
AJAX
请求等待的实例
前言通常,jQuery的函数
ajax
进行
Ajax
调用
。函数
ajax
只能做
一个
Ajax
调用
。当
Ajax
调用
成功时,执行回调函数。可选地,当
Ajax
调用
返回
错误
时,
调用
另
一个
回调函数。但是,该功能不能根据这些请求的结果进行多个
Ajax
请求和注册回调函数。一种情况是,网页使多个
Ajax
请求在禁用用户交互时收集
页面
不同部分的数据。该
页面
仅在
页面
获取所有数据之后才能进行用户交互。本文介绍了jQuery提供的...
ajax
调用
接口数据错乱的原因及
解决
方法
前段时间在做项目的时候遇到
一个
问题,在开发webapp的时候使用
ajax
调用
后端接口的时候,出现了接口数据错乱的问题,现在总结一下问题描述: 同
一个
页面
同时
调用
多个接口:A、B、C、D、E,正常返回结果应该是A-a, B-b, C-c,D-d,E-e。在网络环境比较好的时候,没有问题,然而,在网络环境比较差的时候,
错误
出现了。返回结果中至少有两个接口返回的结果被其他接...
jQuery
ajax
请求
两次
问题,jquery
ajax
请求了
两次
问题
页面
有
一个
请求form:订单编号用户帐户发货状态请选择未发送已发送查询JavaScript请求部分:function showdatalist(){var username = $("#username").val();var orderid = $("#oid").val();var sendStatus = $("#sendStatus").val();var data = {"usernam...
Ajax
52,787
社区成员
25,335
社区内容
发帖
与我相关
我的任务
Ajax
Web 开发 Ajax
复制链接
扫一扫
分享
社区描述
Web 开发 Ajax
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章