eine <tr> mit einer neuen ersetzen

  • js mag mich nicht, und andersrum auch :D


    Ich hab eine Tabelle mit paar <tr>s - klar.
    Auf bestimmten <tr>s gibts links. Onclick werden zusätzliche trs via ajax geladen.
    Jetzt möchte ich die neuen trs unter oder über die momentane tr setzen
    und die alte löschen oder ausblenden.


    Mein Problem:
    ich bekomme es nicht hin, dass ich den string mit den neuen trs in die Tabelle schreibe.


    Wenn ich ein neues Element erstelle (createElement) und die neuen trs (xmlhttp.responseText) da rein schiebe, dann klappt es halbwegs.
    Das div hat da nix zu suchen.


    Kann man denn irgentwie per JS die bestimmte row (id vorhanden) ansrechen
    in etwa:


    JavaScript
    current_el = document.getElementById(id);
    new_el = xmlhttp.responseText;
    replace(current_el, new_el);


    ?


    edit:
    soweit bin ich, aber beomme nur fehler -.-

  • Bei dem Link gehts um remove :D
    Aber ich hab festgestellt, dass der Fehler beim "Ansgangsobjekt" lieg: kein DOM.
    Ich bekomme per Ajax einen String. Und hab gestern noch gelesen, dass bei den functions insertBefore(),replaceChild(),removeChild ect ein oder mehrere DOM erwartet werden.

    Also zurück zur Servereite und alles per json senden :D
    Kennt evtl schon jemand eine Klasse o.ä. die ein Array o.ä. empfängt und daraus html code erzeugt?


    btw: wer es mal braucht - da ich es ja nun alles abgegrast hab:

  • removeChild functioniert, da es ja ein DOM ist (die tr war ja "schon da")
    aber mit der neuen tr, die ja per Ajax als String rüber kommt bekomme ich nen Fehler beim versuch mit insertBefore() oder auch der function insertAfter().
    Die beiden functions wollen ein DOM und schmeißen mir nen error "Error: WRONG_ARGUMENTS_ERR" mit nem String.


    Hatte auch versuch den String zu parsen mit new DOM ... stringTo(weiß nicht mehr genau).
    Aber das functioniert wohl nicht in jedem Browser ...


    EDIT: gelöst.
    Hab nun per ajax nur die reinen Daten ziehen lassen.
    Per HTML das Grundgerüst erstellt und mit JS befüllen lassen ( document.createElement('tr') ect )
    Damit ist es möglich einzellne tr im Table anzuhängen, zu ändern, replace oder löschen.


    und weil ichs so interessant und nützlich finde:
    CSS und/oder JS files per Javascript nachladen:

Jetzt mitmachen!

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