• User

    Si, l'ho fatto proprio così ma non ho utilizzato div ma tbody.

    è possibile utilizzare un div all'interno di una tabella al posto del tbody in modo da poter appendere un gruppo di righe?


  • Super User

    @vnic96 said:

    è possibile utilizzare un div all'interno di una tabella al posto del tbody in modo da poter appendere un gruppo di righe?

    No, non puoi.
    Però potresti appendere n righe, oppure una sola riga con una cella in cui è contenuto il div.


  • User

    si ma così perdo l'allineamento con il resto della tabella.
    attualmente funziona così come dici tu (se ho ben capito il tuo msg) ma mi richiedono l'allineamento tra le righe del dettaglio e quelle che lo precedono


  • User

    Potrei ovviare con xml.

    Potrei farmi un file xml per ogni macroprodotto e leggerlo con una funzione javascript e con il metodo dom potrei aggiungere e popolare le nuove righe.

    Non ho mai utilizzato xml, pensi possa essere troppo lento leggere un xml?


  • Super User

    @vnic96 said:

    potrei ovviare con xml

    potrei farmi un file xml per ogni macroprodotto e leggerlo con una funzione javascript e con il metodo dom potrei aggiungere e popolare le nuove righe.

    Con il javascript non devi leggere obbligatoriamente un file xml, ma anche un file di testo o html.
    @vnic96 said:

    non ho mai utilizzato xml, pensi possa essere troppo lento leggere un xml?
    No, non è lento, anzi nelle web application più professionali viene usato xml o json.


  • User

    grazie pe la pazienza

    appena possibile proverò a seguire questa strada

    Saluti
    vnic96


  • Super User

    @vnic96 said:

    grazie pe la pazienza
    appena possibile proverò a seguire questa strada

    Figurati.
    Tieni in considerazione il suggerimento di utilizzare un framework come jQuery o altro equipollente. Ti semplifica di parecchio la vita.


  • User

    rieccomi

    con javascript e xml funziona ma su IE7 è di una lentezza spaventosa!!

    IExplorer.exe occupa la cpu al 100% fino a quando non ha finito.

    Hai qualche suggerimento?

    Domani farò altre prove per capire se il problema è nella lettura del file xml o nella generazione della struttura tr/td che vado ad appendere al tbody


  • User

    il problema sta nella costruzione della struttura. funziona perfettamente con FF ma con IE7 e' lentissima.

    ecco il codice

    
    var tbody = document.getElementById("details_"+tester);
    var prodotti = xml.getElementsByTagName("prodotto");
     for (var i = 0; i < prodotti.length; i++) {
         var e = prodotti*;//leggo i nodi
         var d1 = e.getElementsByTagName("D1")[0].firstChild.data;
         .
         .
         var dn = e.getElementsByTagName("Dn")[0].firstChild.data;
    
         row = tbody.insertRow(i + 1);
         row.insertCell(0).appendChild(document.createTextNode(""));
         row.insertCell(1).appendChild(document.createTextNode(""));             
         row.insertCell(2).appendChild(document.createTextNode(D1));
         row.insertCell(3).appendChild(document.createTextNode(""));
         row.insertCell(4).appendChild(document.createTextNode(D2));
         row.insertCell(5).appendChild(document.createTextNode(""));
         row.insertCell(6).appendChild(document.createTextNode(D3));
         row.insertCell(7).appendChild(document.createTextNode(""));
         row.insertCell(8).appendChild(document.createTextNode(D4));
         row.insertCell(9).appendChild(document.createTextNode(""));
         row.insertCell(10).appendChild(document.createTextNode(D5));
         row.insertCell(11).appendChild(document.createTextNode(""));
         row.insertCell(12).appendChild(document.createTextNode(D6));
         row.insertCell(13).appendChild(document.createTextNode(""));
         row.insertCell(14).appendChild(document.createTextNode(D7));
         row.insertCell(15).appendChild(document.createTextNode(""));
         row.insertCell(16).appendChild(document.createTextNode("D8"))
         row.insertCell(17).appendChild(document.createTextNode(""));
         row.insertCell(18).appendChild(document.createTextNode(D9));
         row.insertCell(19).appendChild(document.createTextNode(""));
         row.insertCell(20).appendChild(document.createTextNode(D10));
         row.insertCell(21).appendChild(document.createTextNode(""));
         row.insertCell(22).appendChild(document.createTextNode("D11"))
    }
    document.getElementById('img1_'+prod).style.display="none";
    document.getElementById('img2_'+prod).style.display="";
    document.getElementById('details_'+prod).style.display="";
    
    ```il bello e' che dovrei ancora aggiungere altre 26 colonne!!
    
    esiste un altro modo per creare le righe da aggiungere al tbody?
    
    grazie in anticipo
    
    Saluti
    vnic96

  • User

    ho sostituito row.insertcell con createelement per tr e td

    cosi' sembra andare decisamente meglio.