Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Campo numero

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    91

    Campo numero

    Salve a tutti
    Premetto che sono nuovo con il javascript.
    ho un modulo con il campo numerico a cui vorrei aggiungere questo set di caratteri:
    ._-) +(:/
    c'è anche uno spazio vuoto
    ma non funziona cosa è che non và ?
    Un grazie anticipato a chi vorrà rispondermi; di seguito il codice:

    <form name="modulo" id="modulo" onSubmit="return controllo();" method="post" action="paginadiprova.php">
    Numero
    <input name="numero" type="text" id="numero" size="30" />


    <input type="submit" name="Submit" value="Invia" />
    </form>
    <script language="JavaScript">
    function controllo(){
    with(document.modulo) {
    var ckNumero = /^0-9._-) +(:/$/
    if(numero.value=="") {
    alert("Errore: compilare il campo numero");
    numero.focus();
    return false;
    }else if(!ckNumero.test(numero.value)) {
    alert("Errore: Numero non valido ");
    numero.focus();
    return false;
    }
    }
    return true;
    }
    </script>

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    premesso che il codice andrebbe formattato correttamente attraverso gli appositi tag e identato a dovere quando viene inserito in un forum, hai sicuramente un problema nella definizione della regular expression, in quanto alcuni caratteri che hai introdotto (o meglio: tutti eccetto l'underscore (_) e i due punti (:) ) richiedono alternativamente

    - un escape (backslash) oppure
    - il loro inserimento in una classe di caratteri

    in quanto - in quel contesto - sono simboli riservati alla sintassi PCRE, quindi da

    codice:
    var ckNumero = /^0-9._-) +(:/$/
    potresti usare un classe di caratteri con almeno una ripetizione

    codice:
    var ckNumero = /^[0-9._-) +(:/]+$/
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    91
    No, non funziona

  4. #4
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Originariamente inviato da tgat
    No, non funziona
    giusto, la punteggiatura così scritta non è ammessa nella classe

    prova così:

    var ckNumero = /^[0-9]\._\-\)\s\+\(:\/]+$/;

    esempio: http://jsbin.com/ozuxoz/1/edit
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    91
    Originariamente inviato da fcaldera
    giusto, la punteggiatura così scritta non è ammessa nella classe

    prova così:

    var ckNumero = /^[0-9]\._\-\)\s\+\(:\/]+$/;

    esempio: http://jsbin.com/ozuxoz/1/edit
    mi da: Errore: Numero non valido
    anche se io ho compilato un numero

  6. #6
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Originariamente inviato da tgat
    mi da: Errore: Numero non valido
    anche se io ho compilato un numero
    Questo funziona?
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    91
    Originariamente inviato da fcaldera
    Questo funziona?
    Siiii
    grazie mille

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.