Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    12

    Utilizzo dell'istruzione "return" in Google ed IE

    Premetto che sono un neofita autodidatta...spero che sopporterete eventuali banalità che potrei dire...comunque ...questo è il mio problema:ho un codice javascript che viene letto da GOOGLE CROME senza problemi mentre non viene letto da IE che mi evidenzia l'errore qui' sotto riguardante l'utilizzo dell'istruzione RETURN:
    "
    Dettagli errore pagina Web

    Agente utente: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; AskTB5.6)
    Timestamp: Sat, 29 Jan 2011 20:24:54 UTC


    Messaggio: Istruzione 'return' esterna alla funzione
    Linea: 32
    Carattere: 3
    Codice: 0
    URI: file:///C:/Programmi/Notepad++/sito%20EDEN/già%20registrati.html
    "
    Come potrei risolvere il problema?
    Grazie
    robypero

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    e il codice in questione qual e'?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    12
    <script type="text/javascript">
    nome_utente=prompt("scrivi il tuo nome ( tutto minuscolo )"," ");
    if (nome_utente==" "){
    document.write("non hai inserito nessun nome.....");
    return;
    }
    cognome_utente=prompt("scrivi il tuo cognome (in minuscolo)"," ");
    if (cognome_utente==" "){
    document.write("non hai inserito nessun cognome.....");
    return;
    }
    nomeutente=nome_utente+" "+cognome_utente;
    conta ()
    anno=prompt("anno di nascita"," ");
    contaanno()
    for (i=0; clienti[i];i++){
    if (clienti [i] == senza_spazi+annosenza_spazi) {
    document.write(nomeutente);
    document.write(" complimenti !");
    document.write(" ");
    document.write("Hai accumulato ");
    document.write(punti[i]);
    document.write(" punti");
    return;
    }
    }
    if (senza_spazi + annosenza_spazi== ""){
    document.write("non hai inserito nessun dato.....");
    return;
    }
    else {
    document.write("nominativo non presente in archivio");
    }
    </script>
    robypero

  4. #4
    togli return in tutte e 4 le righe dove lo hai messo.

    return è una parola chiave di javascript che si usa solo all' interno di funzioni e serve o a dare indicazione che a quel punto la funzione deve essere o abortita o terminata, oppure per restituire ("ritornare") un valore specifico come risultato dei calcoli che la funzione ha effettuato, esempio
    return 10
    return UnNomeDiVariabileQui
    ecc...

    Tui non hai funzioni lì, hai solo righe procedurali (if, else ecc) al di fuori di una funzione che le encapsuli

    function nomeFunzione(){
    //codice qui
    }

    Quando delle istruzioni sono incluse dentro una funzione, vengono messe diciamo così in "attesa" cioè non vengono eseguite finchè un qualche evento non invoca espressamente la esecuzione di quella funzione e dei codici che vi sono incapsulati dentro.

    Quando invece delle istruzioni non sono incluse dentro una funzione (ed è il tuo caso) vengono eseguite immediatamente non appena lette dal browser, senza alcuna attesa.
    In tali ultime espressioni, la parola chiave return non è ammessa: essa è riservata per i codici incapsulati dentro delle funzioni.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    12
    ok...chiaro ...ma perchè con Google Crome non ho questo problema?
    robypero

  6. #6
    ce lo hai, è un errore talmente grave per un interprete javascript che l'unico motivo per cui dici di non averlo è che non hai controllato la console degli errori di chrome

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    12
    Ho sistemato...grazie
    robypero

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.