Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    9

    Codice che funziona solo su firefox, come mai???

    Ciao a tutti, è da pochi giorni che ho iniziato a smanettare con javascript, e mi ritrovo con un problema:
    Ho preso da un libro questo codice ma non riesco a farlo girare se non su firefox (cioè su firefox gira ma su ie6, opera 7beta e safari 2 non vuole saperne di andare).
    Uso sia windows che mac (firefox e opera sia per mac che per win)

    <html>
    <head>
    <title>Text object Value</title>
    <script type="text/javascript">
    <!--
    function upperMe() {
    document.converter.output.value = document.converter.input.value.toUpperCase();
    }
    // -->
    </script>
    </head>
    <body> Enter lowercase letter for conversion to UPPERCASE:

    <form name="converter">
    <input type="text" name="einput" id="input" value="sample" onChange="upperMe()">


    <input type="text" name="eoutput" id="output" value="" >
    </form>
    </body>
    </html>


    la funzione upperMe() l'ho anche fatta in tutti questi modi:

    function upperMe() {
    document.converter.eoutput.value = document.converter.einput.value.toUpperCase();
    }


    oppure:

    function upperMe() {
    document.getElementById("output").value = document.getElementById("input").value.toUpperCase ();
    }


    oppure:

    function upperMe() {
    document.getElementById("eoutput").value = document.getElementById("einput").value.toUpperCas e();
    }


    Ma gira sempre e solo su firefox (dopo aver premuto il tasto invio alla fine dell'inserimento della stringa nel primo campo di testo, mentre ho un altro esempio per il calcolo degli interessi in un mutuo che si aggiorna non appena cambio l'input nel campo di testo, cosa che CREDO sia più giusta usando l'evento onChange).
    Se invece premo "invio" dopo aver inserito la stringa in IE6, semplicemente mi ricarica la pagina senza scrivere nulla nel secondo campo di testo, in opera e safari, invece, se premo invio nella barra degli indirizzi appaiono i contenuti dei campi come se avessi fatto il submit del modulo.

    Essendo agli inizio e non sapendo da cosa dipenda il problema (ma non è il primo del genere che mi si presenta), avevo comprato un librone per cercare di capire meglio, ma non è stato così.
    Chiedo quindi aiuto a voi: dove sbaglio?????

    Quando richiedo l'attributo "value" di un oggetto, devo specificare l'"id"o il "name" del relativo attributo del tag html???

    Vi ringrazio in anticipo.
    ale

  2. #2
    Benvenuto nel Forum

    l'errore sta qui:
    name="eoutput" id="output"
    nel senso che utilizzi la sintassi:
    document.NomeDelForm.NomeCampo.value
    il nome dei campi quindi non coincide, perchè tu utilizzi output al posto di eoutput...

    quindi ti basta sistemare i nomi dei campi..

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    9
    ciao, che velocità . . .
    ti rispondo solo perchè mentre scrivevo, invece che "anteprima" ho premuto "invia", quindi non hai potuto leggere tutta la 2' parte del mio post...
    Ci avevo già provato, infatti prima id e name erano tutti e due "input" o "output" poi, visto che non andava, allora avevo aggiunto una e davanti al nome, per avere id e name diversi e fare delle prove, ma continua solo a funzionare su firefox

  4. #4
    ho copiato e incollato il tuo codice iniziale, ho cambiato i nomi dei campi e l'ho testato su IE 6, Firefox 1.5 e su Opera 8.54, su sistema operativo Winzoz...
    e funziona su tutti e tre....
    ho cambiato l'evento onChange con onkeyup in modo che ad ogni lettera scritta il campo output si aggiorna...

    le altre possibili funzioni non le ho testate, ma ad occhio sembrano esatte..

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    9
    GRAZIE ho capito il problema . . .
    bisogna poi cliccare il campo output per far apparire il testo...
    io credevo fosse immediato.

    Che idiota.

    Mi hai risolto un gran problema, grazie ancora !!!!!

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.