wurstfinger: Js liefert Daten nicht :((

Hallo Forum!

ich hab n Problem mit JavaScript.

habe folgende datei test.php:

<html>
<head>
<script type="text/javascript" src="js/loadxmldoc.js"></script>
<script type="text/javascript" src="js/xt.js"></script>
</head>
<body>

<div id="feld1" onclick="change()" style="top: 245px; left: 10px; width: 680px; height: 410px; border: none; overflow: hidden;">p</div>
</body>

</html>

und folgende javascripts im ordner js:

loadXMLDoc.js:

function loadXMLDoc(dname)
{
if (window.XMLHttpRequest)
  {
  xhttp=new XMLHttpRequest();
  }
else
  {
  xhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xhttp.open("GET",dname,false);
xhttp.send();
return xhttp.responseXML;
}

und xt.js:

xmlDoc=loadXMLDoc("sys/daten.xml");

z=xmlDoc.getElementsByTagName("daten");
y=(z[1].childNodes[0].nodeValue);
document.write(y);
function change() {
  document.getElementById("feld1" ).innerHTML = y;
  }

dann noch die daten.xml im ordner sys:
<inhalte>
 <index>
  <daten>schreib mal was</daten>
 </index>
</inhalte>

wenn ich jetzt clicke funktioniert alles einwandfrei und der text ändert sich wie erwünscht, ist aber auch nur eine testversion, jetzt möchte ich das ganze in meine website rein haben um einen text bei click in bilder einblenden zu lassen in einem balken, und zwar je nach bild verschieden, nur leider schaff ich es noch nicht mal bei einem bild einen text einzublenden, das blenden funktioniert, aber ich kriege keinen text in das feld1:

var a = 360;
var einb = false;
var ausb = false;
xmlDoc=loadXMLDoc("sys/daten.xml");

z=xmlDoc.getElementsByTagName("daten");
y=(z[1].childNodes[0].nodeValue);

function change() {
  document.getElementById("feld1" ).innerHTML = y;
  }

function einb1() {
  if (document.getElementById("feld1" ).innerHTML != null) {
    document.getElementById("feld1" ).style.top = a + "px";
    } else {
      document.getElementById("feld1" ).style.top = a + "px";
    }
    if(a > 285 && einb == false) {
      a--;
      window.setTimeout("einb1()","10");
      }
    if(a == 285) {
      einb = true;
      ausb = false;
      document.getElementById("feld1" ).innerHTML = y;
      window.setTimeout("ausb1()","15000");
      }
}

kann mir vielleicht jemand einen tip geben woran es hängt bzw. wie ich das hinkriegen könnte?

  1. Hi,

    loadXMLDoc.js:
    xhttp.open("GET",dname,false);

    Synchrone XmlHttpRequests findet man in freier Wildbahn nicht häufig. Auch wenn die Idee des asynchronen erstmal neu ist für dich: mach dich damit vertraut.

    z=xmlDoc.getElementsByTagName("daten");
    y=(z[1].childNodes[0].nodeValue);

    dann noch die daten.xml im ordner sys:
    <inhalte>
    <index>
      <daten>schreib mal was</daten>
    </index>
    </inhalte>

    Es gibt nur einen "daten"-Knoten in deinem Beispieldokument, bei der Zuweisung zu y greifst du aber auf das zweite zu.

    wenn ich jetzt clicke funktioniert alles einwandfrei und der text ändert sich wie erwünscht, ist aber auch nur eine testversion, jetzt möchte ich das ganze in meine website rein haben um einen text bei click in bilder einblenden zu lassen in einem balken, und zwar je nach bild verschieden, nur leider schaff ich es noch nicht mal bei einem bild einen text einzublenden, das blenden funktioniert, aber ich kriege keinen text in das feld1:

    Was sagt denn die Fehlerkonsole?

    Bis die Tage,
    Matti

    1. Hi,

      loadXMLDoc.js:
      xhttp.open("GET",dname,false);

      Synchrone XmlHttpRequests findet man in freier Wildbahn nicht häufig. Auch wenn die Idee des asynchronen erstmal neu ist für dich: mach dich damit vertraut.

      danke für den hinweis, bringt mich aber leider nicht weiter

      z=xmlDoc.getElementsByTagName("daten");
      y=(z[1].childNodes[0].nodeValue);

      dann noch die daten.xml im ordner sys:
      <inhalte>
      <index>
        <daten>schreib mal was</daten>
      </index>
      </inhalte>

      Es gibt nur einen "daten"-Knoten in deinem Beispieldokument, bei der Zuweisung zu y greifst du aber auf das zweite zu.

      ja, ich habs etwas gekürzt damit hier nicht die ganze seite voll wird, sind ca 80 datenknoten im endeffekt, der hier wird aber angezeigt wenn ich die test starte und clicke

      wenn ich jetzt clicke funktioniert alles einwandfrei und der text ändert sich wie erwünscht, ist aber auch nur eine testversion, jetzt möchte ich das ganze in meine website rein haben um einen text bei click in bilder einblenden zu lassen in einem balken, und zwar je nach bild verschieden, nur leider schaff ich es noch nicht mal bei einem bild einen text einzublenden, das blenden funktioniert, aber ich kriege keinen text in das feld1:

      Was sagt denn die Fehlerkonsole?

      was für eine fehlerkonsole????

      Bis die Tage,
      Matti

      sorry für meine amateurhaftigkeit, ich bin kein profi in diesen dingen, bastel aber gern ein wenig dran rum :)

    2. Was sagt denn die Fehlerkonsole?

      Bis die Tage,
      Matti

      ok, jetzt hab ich eine Fahlerkonsole, und sie sagt.........trommelwirbel.......................

      NICHTS!

      schreiben tut sie auch nichts,

      schade :(((

      funktionieren tut sie wohl auch, allein auf gockel hab ich glaub 20