Zoals uit de titel blijkt probeer ik een object te prototypen waarmee ik AJAX calls kan maken. Zie onderstaande code. Het vreemde is alleen dat als ik de code run, er niets gebeurt. Ik krijg ook geen foutmelding. Ik denk dat de fout zit bij een verkeerd gebruik van this in handleResponse. Ook weet ik niet zeker of regel 29 goed is. Wie kan mij helpen?
JavaScript:
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
| Zecco.AJAX = function() { if (typeof ActiveXObject != "undefined") { this.http = new ActiveXObject("Microsoft.XMLHTTP"); } else if (typeof XMLHttpRequest != "undefined") { this.http = new XMLHttpRequest(); } }; Zecco.AJAX.prototype = { constructor: Zecco.AJAX, sendRequest: function(url) { if (typeof this.http != "undefined") { var req = this.http; req.open('get', url); req.onreadystatechange = this.handleResponse; req.send(null); } }, handleResponse : function() { if (this.readyState == 4 && this.status == 200) { var response = this.responseText; var update = new Array(); if (response.indexOf('|') != -1) { update = response.split('|'); for (i = 0; i < update.length; i = i + 2) { this.updatePage(update[i], update[i + 1]); } } } }, updatePage : function(div, text) { var viewer = document.getElementById(div); if (viewer.nodeName == 'IMG') { viewer.src = text; } else { viewer.innerHTML = text; } } }; |