jQuery Datenbankabfrage - Fehler wenn kein Eintrag

  • Hallo,
    mit folgendem Code passiert eine Datenbankabfrage jedesmal, wenn die Maus über ein Thumbnail geführt wird. Es sollen die "technischen Daten" eines Bildes aktualisiert werden.
    Die Daten liegen in einer XML Datei auf dem Server.
    Das ganze funktioniert auch, allerdings gibt es eine Fehlermeldung, wenn z.B. ein Feld in der XML Datei nicht ausgefüllt ist (z.B. wie hier das Feld "remark").
    Es werden dann auch die restlichen Daten nicht aktualisiert, auch wenn sie in der Datei vorhanden sind.


    Die Fehlermeldung in der Fehlerkonsole des Browsers lautet:



    TypeError: null is not an object (evaluating 'ausgabe.getElementsByTagName("bildtitel")[bildnummer-1].firstChild.nodeValue')
    (anonyme Funktion)tiere.php:27:94
    firejquery-1.7.1.js:1045
    fireWithjquery-1.7.1.js:1163
    donejquery-1.7.1.js:7398
    callbackjquery-1.7.1.js:8179


    Hier der Code der jQuery Abfrage:



    Kann mir hier jemand weiterhelfen, wie ich das beheben kann? Wie kann ich dem Programm klarmachen, dass es die Tatsache, dass ein bestimmtes Feld leer ist, ignorieren soll und einfach einen leeren string schreiben soll?


    Grüße,
    Michael

  • Ungetestet, aber ich würde es in etwa so probieren:


    JavaScript
    $("#bildtitel").html(ausgabe.getElementsByTagName("bildtitel")[bildnummer-1].firstChild.nodeValue !== null ? ausgabe.getElementsByTagName("bildtitel")[bildnummer-1].firstChild.nodeValue : "");


    Bin mirjetzt etwas unsicher, ob das shorthand-if in js hier so funktionieren würde, bzw ob die Abfrage so ganz korrekt ist, aber rein logisch würde ich es soangehen...


    Grüße

  • Fehlermeldung?


    Evtl stört das !== NULL
    Probier mal

    JavaScript
    $("#bildtitel").html(
    	ausgabe.getElementsByTagName("bildtitel")[bildnummer-1].firstChild.nodeValue 
    		? ausgabe.getElementsByTagName("bildtitel")[bildnummer-1].firstChild.nodeValue 
    		: ""
    );


    oder

    JavaScript
    $("#bildtitel").html(
    	typeof ausgabe.getElementsByTagName("bildtitel")[bildnummer-1].firstChild.nodeValue !== "undefined"
    		? ausgabe.getElementsByTagName("bildtitel")[bildnummer-1].firstChild.nodeValue 
    		: ""
    );
  • folgende Fehlermeldung:


    null is not an object (evaluating 'ausgabe.getElementsByTagName("bildtitel")[bildnummer-1].firstChild.nodeValue')



    Habe die Abfrage mal folgendermaßen abgeändert:


    JavaScript
    $.ajax({url: "bilderdatenbanken/bilderdatenbank-tiere.xml", success: function(ausgabe) {



    hilft aber auch nichts.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!