Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329

    document.write scrive caricando una nuova pagina

    Vorrei capire come mai in questa porzione di codice:
    codice:
    <form name="campotxt" action="#">
                         <textarea name="field" rows="3" cols="30" >Campo testuale</textarea>
                         <span class="r" onclick="document.write('<span class=\'r\'>Questo è il testo: '+ document.campotxt.field.value+'</span>');">Click on me</span>
    </form>
    "document.write", scrive tutto quello che è presente nella "textarea" ma caricando una nuova pagina...
    Qualcuno mi sa spiegare perchè e come risolvere la cosa facendo scrivere il tutto sotto il tag <FORM> ???
    Grazie.
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  2. #2
    Pensandoci così al volo fossi in te scriverei:


    <script>
    function writeField(fieldelement){
    fieldelement.innerHTML = "<span class=\"r\">Questo è il testo: "+ document.campotxt.field.value+"</span>";
    }
    </script>
    <form name="campotxt" action="#">
    <textarea name="field" rows="3" cols="30" >Campo testuale</textarea>
    <span class="r" onclick="writeField(this);">Click on me</span>
    </form>


  3. #3
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Sinceramente nn ho capito cosa hai fatto... innerHTML è una funzione?
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  4. #4
    fieldelement è l'oggetto che gli passo onclick (se guardi: l'evento "onclick" richiama la funzione "writeField" passandogli come parametro "this", che vuol dire se stesso, cioè lo span).
    innerHTML è una proprietà dell'elemento e vuol dire "l'html contenuto nell'elemento".
    se posso consigliarti una guida a Javascript guarda un po' quà

  5. #5
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Ok, non avevo visto che all'interno del metodo avessi utilizzato il parametro passato.
    Cmq la funzione nn va bene, perchè sostituisce allo span Click Me con il testo che è presente nel metodo, proprio per quell' "innerHTML".
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  6. #6
    ok, se vuoi mantenere quello che c'è già scritto dentro all'elemento basta che aggiungi il nuovo testo a quello vecchio così:

    function writeField(fieldelement){
    fieldelement.innerHTML += "<span class=\"r\">Questo è il testo: "+ document.campotxt.field.value+"</span>";
    }

  7. #7
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    No scusa, io nn voglio solo che si mantenga, ma vorrei fosse scritto in un altro span, fuori da quello del "Click Me".
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  8. #8
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Ho provato così ma nada, non succede nada.
    codice:
    <form name="campotxt" action="#">
                         <textarea name="field" rows="3" cols="30" >Campo testuale</textarea>
                         <span class="r" onclick="document.campotxt.copy.innerHTML = '<span class=\'r\' name=\'fill\'>Questo è il testo: '+ document.campotxt.field.value+'</span>';">Click on me</span>
                         <span name="copy">Here</span>
    </form>
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

  9. #9
    Questo va:
    codice:
    <form name="campotxt" action="#">
        <textarea id="field" name="field" rows="3" cols="30" >Campo testuale</textarea>
        <span class="r" onclick="document.getElementById('copy').innerHTML='<span class=\'r\' name=\'fill\'>Questo è il testo: '+ document.getElementById('field').value+'</span>';">Click on me</span>
        <span id="copy" name="copy">Here</span>
    </form>
    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  10. #10
    Utente di HTML.it L'avatar di Donovant
    Registrato dal
    Sep 2005
    residenza
    London
    Messaggi
    1,329
    Ci avevo pensato, ma volevo sapere come mai con NAME non va...?
    Cmq grazie.
    Beati gli smemorati, perchè avranno la meglio anche sui loro errori...

    My gallery: http://donovant.deviantart.com/gallery/

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 © 2025 vBulletin Solutions, Inc. All rights reserved.