Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Tutte Iniziali In Maiuscolo

    Salve ragazzi
    sapete se è possibile fare in modo che tutte le iniziali delle parole inserite in un input text vengano automaticamente scritte in maiuscolo come nel titolo di questo msg??

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    709
    Potresti provare in questo modo:
    codice:
    <script language="JavaScript">
    <!--
    function maiuscole() {
      var stringa=document.forms['nomeForm'].elements['nomeTextBox'].value; // inserisci il contenuto della text-box dentro una variabile e...
      document.forms['nomeForm'].elements['nomeTextBox'].value=""; // ...cancelli il contenuto della text-box
      
      myString=new String(stringa); // crei un oggetto di tipo stringa contenente il testo
      parole=myString.split(" "); // dividi il contenuto dell'oggetto stringa in un array di singole parole
      
      for (var i=0; i<parole.length; i++) { // per ogni parola...
        parole[i]=parole[i].charAt(0).toUpperCase()+parole[i].substr(1,parole[i].length); // ...metti in maiuscolo la prima lettera e...
        document.forms['nomeForm'].elements['nomeTextBox'].value=document.forms['nomeForm'].elements['nomeTextBox'].value+parole[i]+" "; // ...la reinserisci nella text-box
      }
    }
    // -->
    </script>
    E richiami la funzione maiuscole() all'evento onChange della text-box.
    Sicuramente esistono centinaia di modi migliori per fare la stessa cosa, ed il codice può essere senz'altro ottimizzato, ma questo è il meglio che sono riuscito a pensare con le mie scarse capacità (sia di Javascript che di pensiero)

  3. #3
    Grazie per la risposta e devo dire che tutto funziona.
    Ma vorrei, se posso, stuzzicare le tue "scarse capacità (sia di Javascript che di pensiero)" che sicuramente sono migliori rispetto alle mie, chiedendoti un'altra cosa.
    Ho notato che inserendo il testo tutto in MAIUSCOLO, il tuo script lascia tutto invariato, mentre mi piacerebbe che formattasse il testo con la prima MAIUSCOLA e le restanti lettere in minuscolo.

    Potresti fare un ulteriore sforzo??

    Grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    709
    Bhe questo è già più facile, basta aggiungere una riga di codice:
    codice:
    <script language="JavaScript">
    <!--
    function maiuscole() {
      var stringa=document.forms['nomeForm'].elements['nomeTextBox'].value; // inserisci il contenuto della text-box dentro una variabile e...
      document.forms['nomeForm'].elements['nomeTextBox'].value=""; // ...cancelli il contenuto della text-box
      
      myString=new String(stringa); // crei un oggetto di tipo stringa contenente il testo
      parole=myString.split(" "); // dividi il contenuto dell'oggetto stringa in un array di singole parole
      
      for (var i=0; i<parole.length; i++) { // per ogni parola...
        parole[i]=parole[i].toLowerCase(); // ...proma metti tutto in minuscolo, poi...
        parole[i]=parole[i].charAt(0).toUpperCase()+parole[i].substr(1,parole[i].length); // ...metti in maiuscolo la prima lettera e...
        document.forms['nomeForm'].elements['nomeTextBox'].value=document.forms['nomeForm'].elements['nomeTextBox'].value+parole[i]+" "; // ...la reinserisci nella text-box
      }
    }
    // -->
    </script>

  5. #5
    COMPLIMENTI SEI SULLA BUONA STRADA

    GRAZIE E A BUON RENDERE

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.