Vraag & Antwoord

Webprogrammeren & scripting

[AJAX] Functie werkt niet

Anoniem
carlobernardini
1 antwoord
  • Ik heb de onderstaande Ajax functie gemaakt, met het idee een layerpopup te laten verschijnen wanneer je op een link klikt, en dat er vervolgens informatie uit een ander php bestand wordt opgehaald en in de layer geprint. De functie blijkt echter niet te werken, aangezien de layer niet eens meer verschijnt wanneer ik de ajax functie erbij toevoeg.

    De functie is als volgt:

    [code:1:28409a7c5d]
    function showcard(id,x) {

    document.getElementById(x).style.display = 'block';

    var ajaxRequest;

    try{
    // Opera 8.0+, Firefox, Safari
    ajaxRequest = new XMLHttpRequest();
    } catch (e){
    // Internet Explorer Browsers
    try{
    ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
    try{
    ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (e){
    alert("Kon kaartje niet openen");
    return false;
    }
    }
    }
    // Create a function that will receive data sent from the server
    ajaxRequest.onreadystatechange = function(){
    if(ajaxRequest.readyState == 4){
    document.getElementById('viewcardcontent').write = ajaxRequest.responseText;
    }
    }
    ajaxRequest.open("GET", "retrieveCardInfo.php?id=" + id, true);
    ajaxRequest.send(null);
    }

    }
    [/code:1:28409a7c5d]

    de HTML:
    [code:1:28409a7c5d]
    <?php echo "<a href=\"#\" onclick="showcard('".$row['id']."','view')\" title=\"View ".$row['username']."'s profile\" >".$row['username']."</a>";
    ?>
    <div id="view" style="position: absolute; left: 50px; top: 50px; width: 300px; height: 125px; z-index: 1; border: 1px solid #CCCCCC; background-color:#EEEEEE; padding:5px; filter:alpha(opacity=90);-moz-opacity:.90;opacity:.90; display:none; ">
    <input type="button" value="Close" onclick="showhide('view')" /> <strong>View user visitcard</strong>
    <div id="viewcontent"></div>
    <p>
    </p>
    </div>
    [/code:1:28409a7c5d]

    .. en dit is het php bestand waaruit de Ajax functie de info moet retrieven:
    [code:1:28409a7c5d]
    <?php
    $id = $_GET['id'];
    echo $id;
    ?>
    [/code:1:28409a7c5d]

    Wat doe ik hier fout?

    Alvast bedankt!

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.