Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 30
  1. #1
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870

    Non virgola, ma solo punti.

    Ciao è possibile in js controllare su un determinato campo di un form che vengano inseriti i punti come separatori decimali e non virgole? se si posso vedere un esempio?

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    25

    ...se devi eliminare solo la virgola....

    ... puoi utilizzare questo piccolo script
    codice:
    function verifyInput( objEvent ){
    // il 44 e\' il codice della virgola
    // questo esempio funziona solo con IE 
    
       if( objEvent.keyCode==44 )  { 
           return true;
       }
    }
    mentre per quanto riguarda la input devi aggiungere
    onkeypress="return verifica( event )"

    ciao

  3. #3
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    intendevo qualcosa con una finestra di alert... mi segui?

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Perche` usare strumenti che funzionano inunsolo browser?

    Con JS ci sono gli strumenti per fare il tutto in modo corretto per tutti i browser:

    Se e` solo togliere le virgole e sostituirle con punti:

    <input type="text" ... onchange="this.value=this.value.replace(/\,/g,'.');">

    Se invece vuoi anche mandare l'alert:
    <input type="text" ... onchange="controlla(this);">

    dove la funzione controlla sara` di questo tipo (da inserire in uno script della head):
    codice:
    function controlla(tt) {
      if(tt.value.match(/\,/) {
        alert("la virgola non e` ammessa");
        // tt.value = tt.value.replace(/\,/g,'.');
        return false; // in alternativa alla correzione (riga prec.)
      }
    }
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    codice:
    <script type="text/javascript" language="javascript">
    
    function controlla(tt) {
      if(tt.value.match(/\,/) {
        alert("la virgola non e` ammessa");
        // tt.value = tt.value.replace(/\,/g,'.');
        return false; // in alternativa alla correzione (riga prec.)
      }
    }
    </script>
    
    <input name="PPM" value="<%=rec("PPM")%>" onchange="controlla(this);">
    grazie ma continua a passare la virgola...

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Cosa vuol dire "passare" la virgola?

    Quello script controlla che non ci sia la virgola, ma non fa altro.
    Si puo` sostituire il punto al posto della virgola (con il pezzo di script commentato), o si puo` impedire la spedizione del form, chimando lo scritp sull'onsubmit del form (questo pero` non era richiesto).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  7. #7
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Originariamente inviato da Mich_
    Cosa vuol dire "passare" la virgola?

    Quello script controlla che non ci sia la virgola, ma non fa altro.
    Si puo` sostituire il punto al posto della virgola (con il pezzo di script commentato), o si puo` impedire la spedizione del form, chimando lo scritp sull'onsubmit del form (questo pero` non era richiesto).
    forse non mi spiego bene... ho un campo dove va scritta una cifra decimale, siccome qualcuno ha il vizio di separare i decimali inserendo una virgola (invece del punto) vorrei fargli sapere con una alert che ha appena inserito una virgola nel campo dove invece è previsto il punto come separatore decimale.

    Con lo script da te suggerito e che ho postato, nel campo in questione inserisco una virgola e la spedizione del form parte ugualmente mi segui?

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Ti seguo perfettamente, ma il problema quindi e` un altro rispetto da quanto da te chiesto all'inizio. Tu vuoi impedire che il form venga spedito, non solo avvisare l'utente.

    Per questo devi applicare il controllo al submit del form:
    <form ... onsubmit="controlla(this.NOMECAMPO);">

    dove NOMECAMPO e` definito dall'attributo name del campo
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  9. #9
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Scusa non ho capito... NOMECAMPO è il nome del campo del form che devo controllare dove non ci sia la virgola? e se i campi su cui eseguire il controllo sono più d'uno???

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    E se non continuassi a chiedere modifiche?
    O, in altre parole, se chiedessi tutto o esponessi il tuo problema per intero?
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.