[js] Script komt nooit voorbij readyState 3

Pagina: 1
Acties:

  • semicon
  • Registratie: Augustus 2003
  • Laatst online: 20-08-2025
Hey,

Ik heb een klein javascriptje in gebruik met een hele rare bug. De code moet een bestand die mij een resultaat geeft uitlezen. Dit doet ie als ik er maar 1 resultaat van maak bijv, maar bij een lijst van 10 woorden gaat het al fout. Op een of andere manier blijft het script dan hangen met readystate 3 en komt nooit bij 4!

Nou heb ik natuurlijk gezocht, en wat gevonden, geen oplossing maar meer een beschrijving. Het schijnt dus te liggen aan actieve verbindingen ofzo, iig een verbinging die em actief houdt zodat er nooit een readystate 4 komt :x

Misshcien dat iemand hier denkt dat het toch een ander ding moet zijn, daarom toch mijn code hieronder.
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
function ProcessResponse()
{
    if (httpObj.readyState == 4)
    {
        if (httpObj.status == 200)
        {
            if (!onclickSelection)
            {
                document.getElementById('mainFileTree').innerHTML = httpObj.responseText;
            }
            onclickSelection = true;
        }
    }
    else
    {
        document.getElementById('mainFileTree').innerHTML = "Refreshing tree.";
        for ( var i=0; i<httpObj.readyState; i++ )
        {
            document.getElementById('mainFileTree').innerHTML += ".";
        }
    }
}

function refreshTree(strTree)
{
    document.getElementById('mainFileTree').innerHTML = "Refreshing tree.";
    
    httpObj = initRequestObj();
    httpObj.onreadystatechange = ProcessResponse;
    httpObj.open("GET", "./TreeviewXMLResponse.aspx?tree=" + strTree, true);
    httpObj.send(null);
}

function filterHTML(strText)
{
    var regExp = /<\/?[^>]+>/gi;
    strText = strText.replace(regExp, "");
    return strText;
}

function initRequestObj()
{
    try
    {
        httpObj = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch(e)
    {
        try
        {
            httpObj = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch(oc)
        {
            httpObj = null;
        }
    }

    if(!httpObj && typeof XMLHttpRequest!="undefined")
    {
        httpObj = new XMLHttpRequest();
    }
    
    return httpObj;
}

Ik zoek dus nog steeds een oplossing, maar snap er niks van dat dit niet werkt :(

edit heb weer wat uitgevonden, als ik de status edit, zie ik dat ie wel in readystate 4 komt! maar ik krijg error 500?? :S wat kan dat zijn, want 200 = OK en 500 weet ik niet :x

[ Voor 9% gewijzigd door semicon op 07-11-2005 00:14 ]


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:23

crisp

Devver

Pixelated

Internal Error 500

The server encountered an unexpected condition which prevented it from fulfilling the request.
Lijkt me een serverside probleempje ;)

Intentionally left blank


  • dip
  • Registratie: September 2003
  • Laatst online: 16-01-2023

dip

shut up ulé

Doe je wel iets me je strTree parameter? Ik weet niet niet of dit een incrementele variabele is of een string dat de naam van het menu aangeeft oid.

Roep TreeviewXMLResponse.aspx?tree=bla eens aan via je browser, en kijk of het gewenste resultaat daadwerkelijk is wat je verwacht?

btw.. waarom gebruik je responseText ipv xml ? :)
in FF: httpObj.responseXML, en in IE gewoon httpObj

It's scientifically known, that base improves the tase of cheezes!


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:23

crisp

Devver

Pixelated

dip schreef op maandag 07 november 2005 @ 09:31:
[...]
btw.. waarom gebruik je responseText ipv xml ? :)
in FF: httpObj.responseXML, en in IE gewoon httpObj
In IE ook httpObj.responseXML hoor, maar ik denk dat de reden dat hij responseText gebruikt is dat hij geen XML terugstuurd ;)

Intentionally left blank