Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    42

    Problema con costrutto if else.

    Ciao a tutti. Oggi stavo provando a fare un semplice programma che, dato in input un verbo irregolare inglese, restituisce il rispettivo paradigma. Il programma funziona fino a un certo punto, quando, inserita una qualsiasi parola in maiuscolo, restituisce sempre e solo il blocco del primo if (Be - Was/were - Been).

    codice:
    function verbo()
      {
      verb= /^[A-Z]+$/
      if(!verb.test(document.F1.T1.value))
        {
        alert("Per favore inserisci solo lettere maiuscole.")
        }
      else
        {
        if(document.F1.T1.value == "BE" || "WAS" || "WERE" || "BEEN" )
            {
            document.F1.TX.value= "Be - Was/were - Been"
            }
        else
        {
        if(document.F1.T1.value == "BECOME" || "BECAME" )
            {
            document.F1.TX.value= "Become - Became - Become"
            }
        else
        {
        if(document.F1.T1.value == "BEGIN" || "BEGAN" || "BEGUN")
            {
            document.F1.TX.value= "Begin - Began - Begun"
            }
        else
        {
        alert("ERRORE: verbo inesistente o non presente in memoria.")
        }
                    }
                }
            }
        }
    Grazie in anticipo dell'aiuto!

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    codice:
    function verbo()
      {
      verb= /^[A-Z]+$/
      if(!verb.test(document.F1.T1.value))
        {
        alert("Per favore inserisci solo lettere maiuscole.")
        }
      else
        {<----- toglila
        if(document.F1.T1.value == "BE" ||  document.F1.T1.value == "WAS" || document.F1.T1.value == "WERE" || document.F1.T1.value ==  "BEEN" )
            {
            document.F1.TX.value= "Be - Was/were - Been"
            }
        else
        {<----- toglila
        if(document.F1.T1.value == "BECOME" || "BECAME" )
            {
            document.F1.TX.value= "Become - Became - Become"
            }
        else
        {<----- toglila
        if(document.F1.T1.value == "BEGIN" || "BEGAN" || "BEGUN")
            {
            document.F1.TX.value= "Begin - Began - Begun"
            }
        else
        {
        alert("ERRORE: verbo inesistente o non presente in memoria.")
        }
                    }
                }<-----| 
            }<--------| togli queste tre graffe
        }<-----------|
    in oltre oggetto document.F1.T1.value va ripetuto per ogni confronto idem per gli altri if
    Ultima modifica di cavicchiandrea; 15-02-2014 a 10:30
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    42
    Grazie mille! Mi sei stato di grande aiuto!

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    42
    Un'ultimo aiuto: nella RegExp vorrei mettere anche gli spazi bianchi oltre alle lettere maiuscole, potresti dirmi come si fa?

  5. #5
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    verb=/^[A-Z ]+$/ aggiungi uno spazio oppure verb=/^[A-Z\s]+$/
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    42
    Ok 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.