Avatar billede Slettet bruger
12. april 2010 - 18:16 Der er 5 kommentarer og
1 løsning

Lidt om AJAX

Hej

- Jeg er i gang med at prøve at forstå ajax.
Jeg har taget udgangspunkt i dette her script:
http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_first

Jeg har så lavet det lidt om - til de forhold som jeg skal bruge det til:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<script type="text/javascript">
function loadXMLDoc(){
url='window1.asp';
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  xmlhttp.open("GET",url,false);
  xmlhttp.send(null);
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  xmlhttp.open("GET",url,false);
  xmlhttp.send();
  }
document.getElementById('test').innerHTML=xmlhttp.responseText;
}
</script>
</head>
<body>
<script type="text/javascript">
loadXMLDoc();">
</script>
<div id="test">
</div>
</body>
</html>


- Hvorfor kan jeg ikke starte "loadXMLDoc" som jeg gør her? Men jeg kan godt sætte den i body-onload.

- Hvorfor opdateres indholdet fra "window1.asp" ikke når man refresher siden?

Min tanke var at der skal sættes en timer på sådan at java-scriptet køres igen og igen efter x antal sekunder - så det skal helst virke med at kunne køre "loadXMLDox" i et java-script.
Udover dette skal den også altid hente indholdet fra "window1.asp" når scriptet køres igen...

Hvordan løser man dette?

\Dan
Avatar billede zynzz Praktikant
12. april 2010 - 19:11 #1
1. fjern ">

2. Se overstående punkt..

3. Brug setTimeout() funktionen: http://www.w3schools.com/jsref/met_win_settimeout.asp
Avatar billede Slettet bruger
12. april 2010 - 19:29 #2
1. Det virker ikke selvom jeg gør som du siger... Men den har jeg løst selv! Se her http://fdfvodskov.dk/ajax

2. Problemet løser sig ikke fordi man får punkt 1 til at virke. Men den kan man løse med at skrive "response.expires=-1" foroven i "window1.asp". Dette gælder selvfølgelig kun når det er en asp-fil.

3. Det regnede jeg også med at jeg ville, når punkt 1 virker...

\Dan
Avatar billede zynzz Praktikant
12. april 2010 - 19:54 #3
Jammen det er jo godt det virker nu.. .)
Avatar billede Slettet bruger
12. april 2010 - 23:25 #4
tjae... jeg lukker igen...

tak for forsøget...

\Dan
Avatar billede olebole Juniormester
14. april 2010 - 11:30 #5
<ole>

Generelt er w3schools.com et elendigt sted at lære. Sitet er proppet med alvorlige fejl. Således har hans såkaldte Ajax-tutorial ikke stort med Ajax at gøre  :o|

Hvis du bruger post i stedet for get, cacher IE ikke resultatet af forespørgslerne - og du undgår at bruge unikke query strenge og/eller caching kontrol i serverkoden

/mvh
</bole>
Avatar billede Slettet bruger
14. april 2010 - 17:05 #6
Hej Ole

Mange tak for input. Det jeg synes der er godt ved w3schools.com er at den forklarer tingene på en god måde, sådan at man ikke bliver så forvirret at man ikke forstår noget alligevel. De scripts som er derinde som eksempler er, efter min mening, så simple at man nemt kan forstå dem - og derpå arbejde sig ud fra det.

Men, som du siger. Hvis w3schools.com indeholder alvorlige fejl, og at man derpå lærer noget forkert er det jo ikke godt! Hvis hans Ajax-tutorial ikke har noget med ajax at gøre, hvad har så? Kender du et godt sted på nettet hvor man gratis kan se nogle tutorials om Ajax? Hvor man også lærer noget...

Og tak for det med POST i stedet for GET!

\Dan
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester