AJAX Request

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • AJAX Request

    Ich habe noch eine Frage zu AJAX.

    ich habe mein Ajax Skript soweit zum laufen.

    Jetzt möchte ich ein overlib (das Skript von Erik Bosrup)in die Rückgabe einbauen und bekomme immer eine Fehlermeldung vom Javascript object ist nicht definiert.

    <DIV class=content>

    <A onmouseover="return overlib('Clicking here does nothing!', CAPTION, 'Insert witty caption here...');"

    onmouseout="return nd();" href="javascript:void(0);">navigational help</A>

    </DIV>

    Ich habe versucht diesen Code in die Variable

    $name = 'testing';

    zu implementieren. Klappt leider nicht. Kann mir vielleicht jemand helfen? Danke



    Hier ist meine test.php

    PHP-Code:

    header('Content-Type: text/xml; charset=utf-8'); // sorgt für die korrekte XML-Kodierung

    header('Cache-Control: must-revalidate, pre-check=0, no-store, no-cache, max-age=0, post-check=0'); // ist mal wieder wichtig wegen IE

    // übermittelte Option auswerten

    $option = $_POST['option'];

    switch ($option) {

     case 1:

      $name  = 'testing';

      $alternate = "Kleinbuchstaben";

      break;

    }

    echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";

    echo "<formatname>\n";

    echo " <newname name=\"".$name."\"  />\n";

    echo "</formatname>\n";
    PHP-Code:

    Und das ist 
    die aufrufende html Seite:

    <!
    DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

    <
    html>

     <
    head>

      <
    title>Ajax</title>

      <
    script type="text/javascript">

      <!--

     var 
    request false;

     
    // Request senden

     
    function setRequest(idoption) {

      
    // Request erzeugen

      
    if (window.XMLHttpRequest) {

       
    request = new XMLHttpRequest(); // Mozilla, Safari, Opera

      
    } else if (window.ActiveXObject) {

       try {

        
    request = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5

       
    } catch (e) {

        try {

         
    request = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6

        
    } catch (e) {}

       }

      }

      
    // überprüfen, ob Request erzeugt wurde

      
    if (!request) {

       
    alert("Kann keine XMLHTTP-Instanz erzeugen");

       return 
    false;

      } else {

       var 
    url "test.php";

       
    // Name auslesen

       
    var value document.getElementById('source_'+id).innerHTML;

       
    // Option auslesen

       
    var infotext document.getElementById('option_0'+option).innerHTML;

       
    // Request öffnen

       
    request.open('post'urltrue);

       
    // Requestheader senden

       
    request.setRequestHeader('Content-Type''application/x-www-form-urlencoded');

       
    // Request senden

       
    request.send("name="+value+"&option="+option);

       
    // Request auswerten

        
    request.onreadystatechange = function() {

        
    interpretRequest(idinfotext);

       };

      }

     }

     
    // Request auswerten

     
    function interpretRequest(idinfotext) {

      switch (
    request.readyState) {

       
    // wenn der readyState 4 und der request.status 200 ist, dann ist alles korrekt gelaufen

       
    case 4:

        if (
    request.status != 200) {

         
    alert("Der Request wurde abgeschlossen, ist aber nicht OK\nFehler:"+request.status);

        } else {

         
    // Antwort des Servers -> als XML-Dokument

         
    var xmlDoc request.respon************ML;

         
    // Name aus dem XML-Dokument herauslesen

         
    var newname xmlDoc.getElementsByTagName('newname')[0].getAttribute('name');

         
    // Name aus dem XML-Dokument herauslesen

     

         
    document.getElementById('source_'+id).innerHTML newname;

         
    // Name aus dem XML-Dokument herauslesen

         
    var newname1 xmlDoc.getElementsByTagName('newname1')[0].getAttribute('name1');

         
    // Name aus dem XML-Dokument herauslesen

     

         
    document.getElementById('source_'+id).innerHTML newname1;

     

     

        }

        break;

       default:

        break;

      }

     }

     
    // einem HTML-Tag ein Attribut anhängen

     
    function addAttribute(objectnr) {

      
    object.setAttribute('id''option_'+nr0);

     }

      
    //-->

      
    </script>

      <
    style type="text/css">

     

     

     
    div.field01div.field02 {

      
    positionabsolute;

      
    top0px;

      
    width100px;

      
    border-left1px solid #000000;

      
    text-aligncenter;

     }

     
    div.field01 {

      
    left0px;

     }

     
    div.field02 {

      
    left100px;

     }

     
    span {

      
    cursorpointer;

      
    colorblue;

     }

      </
    style>

     </
    head>

     <
    body>

       <
    div class="field01" id="source_01">Max</div>

       <
    div class="field02"><span onmouseover="addAttribute(this, '01'); setRequest('01', 1)">Normal</span></div>

      </
    div>

     </
    body>

    </
    html

  • #2
    ist auf jeden fall kein php-problem, daher verschiebe ich es mal. außerdem solltest du schon sagen, welches objekt nicht definiert ist.

    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      `getfirebug
      Firebug - Web Development Evolved
      blllubb

      Kommentar

      Lädt...
      X