FrezzeMedlem sedan apr. 2004114 inlägg Nu har jag läst lite i min undan stoppade Javascripts bok, och har fått fram lite saker.
Min kod ser ut så här nu:
<html>
<head>
<script type="text/javascript" src="xmlhttprequest.js"></script>
<script language="JavaScript" type="text/javascript">
function displayMSG()
{
xhr = new XMLHttpRequest();
xhr.open("GET","list_db.asp",false);
xhr.send(null);
document.getElementById("responseArea").innerHTML = (xhr.responseText);
}
setTimeout("displayMSG()",1000);
</script>
</head>
<body>
<div id="responseArea" style="background-color: #F7F7F7;">Vänta...</div>
</body>
</html>
Det mesta fungerar nu, det står "Vänta..." en sekund, sedan så kommer texten, men det uppdaterar sig inte. Hur ska jag göra?
Mvh.
XMLHttpRequest
Du borde pröva att använda XMLHttpRquest. Den låter dig ladda ner en sida fårn din server till en sträng i javascript-klienten. Mycket behändigt!
Du måste ladda ner denna fil för att använda XMLHttpRequest i Explorer.
http://www.scss.com.au/scripts/xmlhttprequest.js
(Källa: http://www.scss.com.au/family/andrew/webdesign/xmlhttprequest/)
Sedan skriver du något sånt här:
xhr = new XMLHttpRequest();
xhr.open("GET","Ensida.php",false);
xhr.send(null);
alert (xhr.responseText);
FrezzeMedlem sedan apr. 2004114 inlägg Re: XMLHttpRequest
nitro2k01 skrev:
Du borde pröva att använda XMLHttpRquest. Den låter dig ladda ner en sida fårn din server till en sträng i javascript-klienten. Mycket behändigt!
Du måste ladda ner denna fil för att använda XMLHttpRequest i Explorer.
http://www.scss.com.au/scripts/xmlhttprequest.js
(Källa: http://www.scss.com.au/family/andrew/webdesign/xmlhttprequest/)
Sedan skriver du något sånt här:
xhr = new XMLHttpRequest();
xhr.open("GET","Ensida.php",false);
xhr.send(null);
alert (xhr.responseText);
Hmm.. har fått det att hämta information nu, men finns det något sätt att göra så det uppdaterar sig också? Så informationen hämtas typ var 3:e sekund, utan att sidan ska laddas om.. men jag upptäckte också att även om jag postade en ny post i databasen så uppdaterades inte det som xml skrev ut, även om jag uppdaterade (F5).
Tack för det snabba svaret, i alla fall =)
@ndersMedlem sedan juni 200032 969 inlägg Du kan använda setTimeout() för att köra något med ett visst intervall. Söken sie, und sie skall hitten. :)
FrezzeMedlem sedan apr. 2004114 inlägg
@nders skrev:
Du kan använda setTimeout() för att köra något med ett visst intervall. Söken sie, und sie skall hitten. :)
Nu har jag läst lite i min undan stoppade Javascripts bok, och har fått fram lite saker.
Min kod ser ut så här nu:
<html>
<head>
<script type="text/javascript" src="xmlhttprequest.js"></script>
<script language="JavaScript" type="text/javascript">
function displayMSG()
{
xhr = new XMLHttpRequest();
xhr.open("GET","list_db.asp",false);
xhr.send(null);
document.getElementById("responseArea").innerHTML = (xhr.responseText);
}
setTimeout("displayMSG()",1000);
</script>
</head>
<body>
<div id="responseArea" style="background-color: #F7F7F7;">Vänta...</div>
</body>
</html>
Det mesta fungerar nu, det står "Vänta..." en sekund, sedan så kommer texten, men det uppdaterar sig inte. Hur ska jag göra?
Detta gör så att rutan uppdateras varje sekund.
Ett tips för övrigt: Istället för att skriva vänta i rutan så bör du kanske infoga dessa värden redan på server-sidan första gången sidan hämtas.
<html>
<head>
<script type="text/javascript" src="xmlhttprequest.js"></script>
<script language="JavaScript" type="text/javascript">
function displayMSG()
{
xhr = new XMLHttpRequest();
xhr.open("GET","list_db.asp",false);
xhr.send(null);
document.getElementById("responseArea").innerHTML = (xhr.responseText);
setTimeout("displayMSG()",1000);
}
window.onload=function(){
displayMSG();
}
</script>
</head>
<body>
<div id="responseArea" style="background-color: #F7F7F7;">Vänta...</div>
</body>
</html>