AJAX werkt niet in IE
Hallo,
ik heb dit ajax script:
Echter werkt deze niet in Internet Explorer, wat kan hierin de fout zijn?
M.V.G.
Damiaan Reijnaers
ik heb dit ajax script:
Echter werkt deze niet in Internet Explorer, wat kan hierin de fout zijn?
M.V.G.
Damiaan Reijnaers
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<script language="javascript">
function createRequestObject() {
var req;
if(window.XMLHttpRequest){
// Firefox, Safari, Opera...
req = new XMLHttpRequest();
} else if(window.ActiveXObject) {
// Internet Explorer 5+
req = new ActiveXObject("Microsoft.XMLHTTP");
} else {
// There is an error creating the object,
// just as an old browser is being used.
alert("Your Browser Does Not Support This Script - Please Upgrade Your Browser ASAP");
}
return req;
}
// Make the XMLHttpRequest object
var http = createRequestObject();
function sendRequest(page) {
// Open PHP script for requests
http.open('get', page);
http.onreadystatechange = handleResponse;
http.send(null);
}
function handleResponse() {
if(http.readyState == 4 && http.status == 200){
// Text returned FROM the PHP script
var response = http.responseText;
if(response) {
// UPDATE ajaxTest content
document.getElementById("msgstatus").innerHTML = response;
}
}
}
function repeatloop()
{
sendRequest('playlist.php');
setTimeout("repeatloop()", 20000);
}
window.onload=function() {
repeatloop();
}
</script>[/CODE]
function createRequestObject() {
var req;
if(window.XMLHttpRequest){
// Firefox, Safari, Opera...
req = new XMLHttpRequest();
} else if(window.ActiveXObject) {
// Internet Explorer 5+
req = new ActiveXObject("Microsoft.XMLHTTP");
} else {
// There is an error creating the object,
// just as an old browser is being used.
alert("Your Browser Does Not Support This Script - Please Upgrade Your Browser ASAP");
}
return req;
}
// Make the XMLHttpRequest object
var http = createRequestObject();
function sendRequest(page) {
// Open PHP script for requests
http.open('get', page);
http.onreadystatechange = handleResponse;
http.send(null);
}
function handleResponse() {
if(http.readyState == 4 && http.status == 200){
// Text returned FROM the PHP script
var response = http.responseText;
if(response) {
// UPDATE ajaxTest content
document.getElementById("msgstatus").innerHTML = response;
}
}
}
function repeatloop()
{
sendRequest('playlist.php');
setTimeout("repeatloop()", 20000);
}
window.onload=function() {
repeatloop();
}
</script>[/CODE]
Gewijzigd op 01/01/1970 01:00:00 door Damiaan Reijnaers
Misschien helpt dit:
http://www.webdeveloper.com/forum/showthread.php?t=137064
Sorry ben niet helemaal thuis in de AJAX-wereld
http://www.webdeveloper.com/forum/showthread.php?t=137064
Sorry ben niet helemaal thuis in de AJAX-wereld
Hoi Damiaan,
Misschien kun je beter jquery gebruiken
dat gaat namelijk erg gemakkelijk.
Ik weet niet precies wat jou repeatloop doet maar ajax requests via posts kun je zo sturen:
Misschien kun je beter jquery gebruiken
dat gaat namelijk erg gemakkelijk.
Ik weet niet precies wat jou repeatloop doet maar ajax requests via posts kun je zo sturen:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
$.ajax({
type: "POST", //of GET van maken
url: "pathTo/playlist.php",
cache: false, //niet opslaan in cache, zo heb je meest resente gegevens
data: "UID="+ uid, //de parameters meegeven->uid heb ik bijv uit een formulier gehaald of boven in mijn js geset.
success: function(html){
$("#msgstatus").html(html); //geeft waarde terug en schrijft deze in div msgstatus, indien dit id is moet er #, als het een class is moet het een . zijn voor de msgstatus
}
});
type: "POST", //of GET van maken
url: "pathTo/playlist.php",
cache: false, //niet opslaan in cache, zo heb je meest resente gegevens
data: "UID="+ uid, //de parameters meegeven->uid heb ik bijv uit een formulier gehaald of boven in mijn js geset.
success: function(html){
$("#msgstatus").html(html); //geeft waarde terug en schrijft deze in div msgstatus, indien dit id is moet er #, als het een class is moet het een . zijn voor de msgstatus
}
});
Dit helpt waarschijnlijk:
Vervang lijn 55 door
sendRequest('playlist.php?random='+ Math.random());
Vervang lijn 55 door
sendRequest('playlist.php?random='+ Math.random());
Emmanuel, je bent mijn held! Het werkt perfect :D
Ook dank aan Wim en Pepijn voor het posten, Wim ik heb jouw oplossing niet gebruikt, omdat ik al zag dat die van Emmanuel werkte, toch bedankt! :D
Ook dank aan Wim en Pepijn voor het posten, Wim ik heb jouw oplossing niet gebruikt, omdat ik al zag dat die van Emmanuel werkte, toch bedankt! :D




