Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    2

    problema javascript mozilla

    Ciao a tutti,
    ho un problema con javascript e mozilla.
    La mia pagina è dotata di una form la cui struttura si modifica mediante funzioni javascript (sfruttando la proprietà innerHtml). Cercando di essere più chiari c'è un pulsante che quando viene premuto genera dei nuovi input textarea. Il problema è che se l'utente ha già riempito dei campi e clicca sul pulsante i valori precedentemente inseriti vengono eliminati. Questo accade solo su mozilla mentre su IE funziona correttamente. Qualcuno sa aiutarmi???

  2. #2
    qualcosa += qualocsaltro

    significa


    qualcosa = (qualcosa + qualcosaltro)

    il che significa che qualcosa viene risettato, a prescindere che parte del nuovo valore fosse già presente o meno.

    In pratica è un bug di IE non eliminare quanto scritto prima all'utilizzo di

    elemento.innerHTML += "altro testo";

    poichè FireFox, Mozilla, Opera, Safari e tutti i browsers degni di tale nome, si comportano come previsto, ricreano il tutto con rigorosa logica e non "con fantasia"


    Soluzione ? Gli standards del DOM e non il NON standard innerHTML

    function aggiungiInput(elemento){
    var input = document.createElement("input");
    input.type = "text";
    input.name = "nomechevuoi";
    input.value = "value se necessaria";
    elemento.appendChild(input);
    }

    <div>
    <input type="button" onclick="aggiungiInput(this.parentNode)" />
    </div>
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    2
    perfetto grazie dell'aiuto.
    ciao Alessio

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.