webForumDet fria alternativet
Logga in / Bli medlem

hämta sida ( Ajax )

JavaScript

5 svar · 539 visningar · startad av sin_adec

Medlem sedan apr. 2002272 inlägg
Frågan#1

Hej!

Det är nämligen så att jag har en sida som ska med hjälp av ajax hämta två sidor och presentera informationen på första sidan, men på IE 7,0 så publiceras informationen relativt snabbt men på Firefox version 3,0 så hämtar den bara en sida medan den andra inte kommer fram.

koden för första sidan:

<body onload="fetch('featured_restaurant2.asp', 'container_div'),fetch2('featured_restaurant3.asp', 'container_div2')"></body>

och här publicerar den första sidan, som går bra i IE7,0 men inte i firefox

<div id="container_div" class="container"><img src="content/preload.gif" width="16" height="16"><div>

och här publicerar den andra sidan:

<div id="container_div2" class="container2"><img src="content/preload.gif" width="16" height="16"><div>

och här har ni js koderna
fetcher.js

function fetch(URL, divId) {
req = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("MSXML2.XMLHTTP.3.0");

req.open("GET", URL, true);
req.onreadystatechange = function() {
if (req.readyState == 4 && req.status == 200) {
document.getElementById(divId).innerHTML = req.responseText;
}
}
req.send(null);
}

fetcher2

function fetch2(URL, divId) {
req = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("MSXML2.XMLHTTP.3.0");

req.open("GET", URL, true);
req.onreadystatechange = function() {
if (req.readyState == 4 && req.status == 200) {
document.getElementById(divId).innerHTML = req.responseText;
}
}
req.send(null);
}

vore snällt ifall ni kan hjälpa mig lösa problemet

Medlem sedan dec. 20025 483 inlägg
#2

Du vill separera fetch()-anropen med semikolon i stället för kommatecken.

Dessutom, varför har du både fetch() och fetch2()? Skrota fetch2() och använd enbart fetch().

Medlem sedan apr. 2002272 inlägg
#3

jag visste inte att man kunde hämta mer en, trodde varje sida behövde varsin

nu har jag använt mig av:

<body onload="fetch('featured_restaurant2.asp', 'container_div');fetch('featured_restaurant3.asp', 'container_div2')"></body>

nu när jag använder mig av ovanstående kod så publicerar den "featured_restaurant3.asp" men när det gäller featured_restaurant2.asp antingen kommer inte den fram eller så publicerar visar den featured_restaurant2.asp vilket den inte ska göra.

men funkar iaf fint på IE7,0

Medlem sedan juni 20019 519 inlägg
#4

ha inte med den koden då i onload.

Medlem sedan dec. 20025 483 inlägg
#5
var req = new Array(2);

function fetch(URL, divId, index) {
req[index] = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("MSXML2.XMLHTTP.3.0");

req[index].open("GET", URL, true);
req[index].onreadystatechange = function() {
if (req[index].readyState == 4 && req[index].status == 200) {
document.getElementById(divId).innerHTML = req[index].responseText;
}
}
req[index].send(null);
}
.
.
.
<body onload="fetch('featured_restaurant2.asp', 'container_div', 0);fetch('featured_restaurant3.asp', 'container_div2', 1)">
Medlem sedan apr. 2002272 inlägg
#6

tack för hjälpen. (y)

255 ms totalt · 4 externa anrop · v20260731065814-full.05830320
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)