getElementById(var) werkt niet? - AJAX

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Dennis

Dennis

22/04/2009 14:18:00
Quote Anchor link
Hey mensen,
Even een vraagje over het volgende AJAX script.
Ik probeerde een functie te maken waarmee je een waarde en een plaats meegeeft waarin de uitvoer van de functie showHints komt.
De eerste

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
    alert("Plaats is: " + plaats);

werkt.
De tweede echter wordt niet uitgevoerd.

Ik heb dit script uitgetest, zonder de variabele plaats en dan een id van een div opgegeven.
Dan doet dit script het wel, een beetje gek.

Ik wil echter een algemene functie maken waarmee ik niet gebonden ben aan 1 div naam, vandaar de var plaats.

Heb ook gegoogled, meerdere mensen hebben dit probleem, ik heb echter nergens een werkende oplossing gezien, vandaar
dat jullie misschien kunnen helpen?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
66
67
68
<script type="text/javascript">
function showHints(zoekterm,plaats)
{
    if(zoekterm.length == 0)
    {
        document.getElementedById(plaats).innerHTML = "";
        return;
    }
    xmlHttp = GetXmlHttpObject();
    
    if(xmlHttp == null)
    {
        window.alert("Sorry, maar u kunt geen AJAX-functies gebruiken");
        return;
    }
    else
    {            
        var url = "zoeknaam.php";
        url = url + "?zoekterm=" + zoekterm;
        url = url + "&rand=" + Math.random();
        xmlHttp.onreadystatechange = stateChanged(plaats);
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
        
    }
}


function GetXmlHttpObject()
{
    var xmlHttp=null;
    try
    {
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
        // Internet Explorer
        try
        {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
         catch (e)
        {
            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    
    if(!xmlHttp)
    {
        alert("Sommige functies zijn niet beschikbaar");
    }
    
    return xmlHttp;
}


function stateChanged(plaats)
{
        alert("Plaats is: " + plaats);        
    if (xmlHttp.readyState == 4)
    {     
        alert("Plaats is: " + plaats);    
        document.getElementById(plaats).innerHTML=xmlHttp.responseText;
    }
}
</script>


Bij voorbaat bedankt!
Gewijzigd op 01/01/1970 01:00:00 door Dennis
 
PHP hulp

PHP hulp

28/03/2024 21:40:41
 
Jelmer -

Jelmer -

22/04/2009 16:36:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
xmlHttp.onreadystatechange = stateChanged(plaats);

Nu wordt stateChanged direct uitgevoerd, en wordt het resultaat van die functie aan onreadystatechange toegewezen. Wat jij zoekt is
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
xmlHttp.onreadystatechange = function() {
    stateChanged(plaats);
};
 
Dennis

Dennis

26/04/2009 16:21:00
Quote Anchor link
Ja super bedankt!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.