Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    24

    Codice javascript funzionante in IE8 ma non funzionante su mozilla

    Ho il seguente codice in javascript che mi fa la validazione dei dati di un modulo! Su IE8 funziona bene, su Mozilla invece non compie alcuna azione. La console degli errori di mozilla fa rifermineto alla variabile nome che nello script ho indicato con una freccia. Grazie anticipatamente per il vostro aiuto! Ciao ramaiato


    <script type="text/javascript">

    function validate() {

    -->nome = dati.nome.value;
    cognome = dati.cognome.value;
    tipo_numero = dati.tipo_numero.value;
    prefisso = dati.prefisso.value;
    numero = dati.numero.value;

    valoreN = nome;
    valoreC = cognome;
    valoreT = tipo_numero;
    valoreP = prefisso;
    valoreNm = numero;

    if((valoreN == 0)&&(valoreC == 0)) {
    alert("Inserisci il nome o il cognome");
    return false;
    }

    if((valoreT == 0)||(valoreP == 0)||(valoreNm == 0)) {
    alert("Inserisci il numero relativo del nuovo contatto")
    return false;
    }
    }


    </script>

    </head>

    <body>

    Home

    <form name="dati" method="post" action="form.asp?clickato=true" onSubmit="return validate();">

  2. #2
    Non è molto furbo chiamare le variabili javascript come gli elementi della tua pagina. Anche se è contrario agli standard W3C, Firefox accetta che siano raggiungibili tramite il solo id tutti gli elementi della pagina.
    Dunque in pratica, stai cercando di attribuire all'oggetto che rappresenta il tuo input con id=nome, la stringa contenutavi.
    All of the true things that I am about to tell you are shameless lies.
    (Bokonon Books)

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    24
    Ti ringrazio per avermi risposto! Bene ho eseguito il seguente script è funziona su firefox!

    <script type="text/javascript">

    function validate() {

    nome = document.dati.nome.value;
    if (nome == 0) {
    alert("inserisci un valore");
    return false;
    }
    }
    </script>

    <form name="dati" method="post" action="form.asp?clickato=true&id=nome" onSubmit="return validate();">
    .
    .
    <td width="152"><input type="text" id="nome" name="nome" value="<%= nome %>"></td>

    In poche parole ho realizzato un rubrica telefonica in asp che in realtà serve solo a me! Sono neofita nella programmazione! Mi puoi spiegare cortesemente per quale motivo non è bene
    chiamare le variabili javascript come gli elementi della pagina? Sono reperibili le variabili di javascript?!

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    24
    Ho notato che in firefox non è necessario passare gli elementi della pagina tramite l'id perchè siano raggiunti.
    Come si nota all'interno delle variabili del mio script chiamo gli elementi della pagina tramite l'oggetto document. A quanto pare l'oggetto in questione riconosce i campi del modulo senza alcuna dichiarazione dell'id al loro interno.
    Ad ogni modo da ora in poi, tramite tuo consiglio,richiamerò il codice javascript tramite
    file esterni .js all'interno delle mie pagine.
    Mi puoi spiegare cortesemente che rischio c'è chiamare le variabili javascript come gli elementi della pagina?

  5. #5
    Originariamente inviato da ramaiato
    Ho notato che in firefox non è necessario passare gli elementi della pagina tramite l'id perchè siano raggiunti.
    Sì, ma è contrario agli standard W3C. Il modo standard con cui riferirsi agli elementi della pagina, e che ti consiglio di usare, è il metodo document.getElementById(), che accetta come parametro in input l'id dell'elemento.

    Ad ogni modo da ora in poi, tramite tuo consiglio,richiamerò il codice javascript tramite
    file esterni .js all'interno delle mie pagine.
    Ehm, non mi pare di aver detto questo... Può essere utile per vari motivi scindere in file diversi script e interfaccia, ma questo è un altro discorso.

    Mi puoi spiegare cortesemente che rischio c'è chiamare le variabili javascript come gli elementi della pagina?
    A parte la praticità di seguire regole di denominazione di variabili e oggetti chiare, che ti aiuteranno a gestire il tuo lavoro di programmazione, c'è il fatto che, come detto prima, Firefox potrebbe (a questo punto, uso il condizionale) trovarsi con uno stesso identificatore che identifica due cose differenti... fai presto a includere dei bachi nei tuoi script in questo modo.
    All of the true things that I am about to tell you are shameless lies.
    (Bokonon Books)

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    24
    Sei stato chiarissimo! Ti ringrazio ancora una volta per il tuo aiuto e per avermi fatto apprendere cose nuove! Ti saluto! Ciao ramaito

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.