Visualizzazione dei risultati da 1 a 8 su 8

Discussione: estrarre un <div>

  1. #1

    estrarre un <div>

    Ciao a tutti,

    avrei la necessità di estrarre il contenuto di un <div> di una certa pagina html, e inserirlo in un <div> di un'altra pagina, eventualmente dopo averne trasformato il contenuto.

    Mi date qualche dritta?

    Grazie

  2. #2
    Ti dico che si può fare...ma non è facilissimo!!

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    867
    se ho capito quello che ti serve, con innerHTML puoi mettere in una stringa il contenuto di un div...

    codice:
    contenuto = document.getElementById('id_del_div').innerHTML;
    per il resto... devi essere piu' preciso.....

    No pvt per sollecitare risposte, grazie.

  4. #4
    Originariamente inviato da afurly

    per il resto... devi essere piu' preciso.....

    Provo a descrivere un po' meglio il mio problema.

    Ho una pagina http://www.miosito.it/contenitore.htm; all'interno di un <div id="contenitore"> di questa, vorrei far comparire il contenuto del <div id="contenuto"> della pagina http://www.altrosito.com/pagina_del_contenuto.htm.

    E questo è lo step 1.

    Lo step 2 sarebbe riuscire a trasformare il contenuto del <div id="contenuto">, di cui conosco la struttura, in modo da poter togliere ciò che non mi serve, e cambiare l'aspetto di ciò che mi serve, prima di infilarlo nel <div id="contenitore">.

    E' veramente un lavoro così complicato? Riesci a darmi almeno un'idea per partire?

    Grazie!

  5. #5
    prova a vedere se è quello che cerchi..

    <html>
    <head>
    <script language="javascript">
    var Datadinascita = "1976-03-14";

    String.prototype.trim = function() { return this.replace(/(^\s*)|(\s*$)/g, "") }
    String.prototype.toDate = function() {
    if (this.search("/") != -1) {
    var _arrayDate = this.trim().split(" ");
    var _aDate = _arrayDate[0].split("/").reverse();
    } else if (this.search("-") != -1) {
    var _arrayDate = this.trim().split(" ");
    var _aDate = _arrayDate[0].split("-");
    } else return null;
    var _aTime = (_arrayDate.length == 2) ? _arrayDate[1].split(":") : new Array(0,0,0);

    execScript("result__ = isDate('" + _aDate.join("-") + " " + _aTime.join(":") + "')", "VBScript");
    if (result__ == false) return null;
    _aDate[1]--;
    return eval("new Date(" + _aDate.join() + "," + _aTime.join() + ")");
    }

    function init() {
    var sURL = "http://www.oroscopi.com/oroscopo/oroscopo_giorno.php?segno=" + getZodiacalSign(Datadinascita);

    var xmlhttp = new ActiveXObject("MSXML2.XMLHTTP");
    xmlhttp.open("GET", sURL, false);
    xmlhttp.send();
    HTML = xmlhttp.responseText;
    str = new RegExp('([\\s\\S])*?</table>', "gi");
    oroscopeTable = "<base href='http://www.oroscopi.com/cards/images/'/>"
    oroscopeTable += HTML.match(str)[0].replace('','');
    divOutput.innerHTML = oroscopeTable;
    divOutput.all.tags("TABLE")(0).deleteRow(1);
    divOutput.style.display = "block";
    }

    function getZodiacalSign(zDate) {
    dateZodiacali = new Array();
    dateZodiacali["capricorno"] = "01-01,01-20"
    dateZodiacali["acquario"] = "01-21,02-19"
    dateZodiacali["pesci"] = "02-20,03-20"
    dateZodiacali["ariete"] = "03-21,04-20"
    dateZodiacali["toro"] = "04-21,05-20"
    dateZodiacali["gemelli"] = "05-21,06-21"
    dateZodiacali["cancro"] = "06-22,07-22"
    dateZodiacali["leone"] = "07-23,08-23"
    dateZodiacali["vergine"] = "08-24,09-22"
    dateZodiacali["bilancia"] = "09-23,10-22"
    dateZodiacali["scorpione"] = "10-23,11-22"
    dateZodiacali["sagittario"] = "11-23,12-21"
    dates = zDate.toDate();
    yearDates = dates.getFullYear();
    for (i in dateZodiacali) {
    limite = dateZodiacali[i].split(",");
    if (dates >= (yearDates + "-" + limite[0]).toDate() && dates <= (yearDates + "-" + limite[1]).toDate()) return i;
    }
    }
    </script>
    </head>
    <body onload=init()>
    <div id=divOutput style=display:none></div>
    </body>
    </html>

  6. #6
    Originariamente inviato da Demonet
    prova a vedere se è quello che cerchi..
    Ho provato su IE, e penso possa andare bene (sicuramente per lo step 1, cerco di capire per lo step 2...); però su FF non mi funziona...

  7. #7
    ho usato dei metodi compatibili con IE, come "all.tags" che non è contemplato in FF!!
    Cmq la logica è quella...fammi sapere ok?

    N.B. per il secondo step devi prendere spunto da dove parte il codice : "str = new RegExp('([\\s\\S])*?</table>', "gi");"

    con le Reg Expression si può fare di tutto credimi!!

  8. #8
    Originariamente inviato da Demonet
    ho usato dei metodi compatibili con IE, come "all.tags" che non è contemplato in FF!!
    Cmq la logica è quella...fammi sapere ok?
    Ok, tento il porting

    Grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.