dynamischen tree erzeugen

Das ist seltsam! Ich konnte bei mir das hier erfolgreich testen:
Javascript:
function treeRowClicked(e) {
    var tree = document.getElementById ("my-tree");
    var selectedCell = tree.getElementsByTagName('treeitem')[tree.currentIndex];
    var container = selectedCell.parentNode.parentNode;
    if (container.nodeName != 'treeitem')
        // Es wurde keine Störung sonder eine Anlage angeklickt, wenn das hier ausgeführt wird.
        return;

    var stoerung = selectedCell.getAttribute('label')
    var anlage = container.getAttribute('label');
    
    alert(anlage + ': ' + stoerung)
}

Je nachdem wie tief ein XML-Baum aufgebaut ist, desto öfters muss .parentNodes aufgerufen werden, um sich am Baum hochzuangeln. Jetzt sieht es also so aus: var container = selectedCell.parentNode.parentNode; Vergleiche mit meinem letzten Post
 
Hallo,

ich weiß nicht warum, aber bei mir funktioniert es nicht. :(
Im Anhang einmal mein komplettes Programm.

Gruß
worst_case
 

Anhänge

  • content.rar
    8,2 KB · Aufrufe: 20
Der einzige Fehler ist in Zeile 13 (main.js). Du verwendest eine nicht vorhande Variable.
Ersetze es mit "document.getElementById("akt_varname").value = anlage + "_" + stoerung;" und es sollte tun.

PS: Siehe PNs
 
Hallo Bullja,

vielen Dank, genau das war der Fehler obwohl ich nicht verstehe.

1. trotz des Fehlers funktionierte ein statischer tree
2. Ich habe hinter Zeile 1 alles kommentiert, trotzdem kam der Fehler.

Warum auch immer..... es funktioniert jetzt.

Jetzt würde ich noch gerne die "textbox" in der Länge (Anzeigelänge nicht maxlen) begrenzen. Ein
"width" funktioniert hier nicht, haste eine Idee.

Dann würde ich noch eine "listbox" neben das tree stellen. Also 50% vom Bildschirm "tree" und 50% für die "listbox".
In html hätte ich eine "table" genommen, dies geht aber auch nicht.

Gruß
worst_case
 
Zuletzt bearbeitet:
Gut, dass es nun funktioniert, warum auch immer. In welcher Datei hast du alles hinter Zeile 1 kommentiert?
Könnte mir vorstellen, dass du alles auskommentiert hast, Firefox aber die Dateien aus dem Cache verwendet hat und die Änderungen eben nicht übernommen hat. Das Caching sollte man ausschalten (Hat aber nichts mit dem Webpage-Cache zu tun denke ich!) wenn man irgendwas am Source ändert. Hast Du das?

Zu 1.: Der Fehler taucht auf Javascript-Ebene auf, das beeinflusst nicht den statisch generierten Tree in der XUL Datei.

Um die Länge/Breite für die Textbox zu begrenzen versuch die CSS-Eigenschaft max-width. Wenn das nichts bringt, dann solltest du eine hbox verwenden und einen spacer rechts neben die Textbox setzen, vermute, dass dann auch das ganz normale Attribut width funktionert. Das wäre auch die bessere Methode.

Ein Pendand für table ist das grid Element in XUL.

Und nochmal: Schau in das XUL-Tutorial rein ;) ... Ansonsten hier fragen.
 

Neue Beiträge

Zurück