Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Controllo dei campi in javascript non mi funziona + niente

    In questo modo non si prende ne cifre ne numeri
    <script language="javascript">

    function checkdati()
    {
    var nome = document.frmMail.nome.value;
    var caratteri_reg_expr=/[a-zA-Z]\s/;

    if (!caratteri_reg_expr.test(nome) || (nome=="") || (nome=="undefined"))
    {
    alert("Attenzione! Campo NOME vuoto o incorretto.");
    document.frmMail.nome.focus()
    return (false)
    }
    }
    </script>

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    1. l'ordine delle opzioni di OR:

    if ( (nome=="undefined") ||(nome=="") || !caratteri_reg_expr.test(nome))

    2. togli il puntoevirgola alla fine della definizione della RE.

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    non si prende nessun valore mi visualizza sempre il msg di alert
    <script language="javascript">

    function checkdati()
    {
    var nome = document.frmMail.nome.value;
    var caratteri_reg_expr=/[a-zA-Z]\s/

    if ((nome=="") || (nome=="undefined") || !caratteri_reg_expr.test(nome))
    {
    alert("Attenzione! Campo NOME vuoto o incorretto.")
    document.frmMail.nome.focus()
    return (false)
    }

    }
    </script>

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Fai un passo alla volta.
    (e inserisci degli alert ad ogni passo)

    Anzitutto testare la variabile contro undefined non ha senso: andrebbe casomai testato il campo prima di copiarlo nella variabile.

    Poi occorre verificare se la RE e` corretta. Io proporrei
    /[a-zA-Z\s]/
    (che e` una cosa diversa)

    Comunque trasforma il tuo script cosi`:

    codice:
    function checkdati() {
      alert("inizio funzione");
      var nome = document.frmMail.nome.value;
      var caratteri_reg_expr=/[a-zA-Z\s]/
    
      if (nome==""){
        alert("nome vuoto");
        return false;
      } else if ( !caratteri_reg_expr.test(nome)) {
        alert("Attenzione! Campo NOME vuoto o incorretto.");
    document.frmMail.nome.focus();
        return false;
      }
    
    }
    Poi sappimi dire come si comporta nelle varie situazioni (con campo corretto, con campo vuoto, con campo sbagliato, ...)

    PS ho spezzato l'if, perche` ho qualche dubbio sulla RE e voglio quindi separare gli effetti. Quando funziona si puo` rimettere assieme.

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    Facendo in questo modo
    Quando il campo è vuoto: mi visualizza il messaggio ok!
    Quando inserisco uno spazio iniziale: mi visualizza il messaggio ok!
    Quando inserisco dei numeri 1233445: mi visualizza il messaggio ok!
    Quando inserisco uno spazio e dei numeri non se ne frega proprio
    Quando inserisco numeri e lettere non se ne frega proprio
    <script language="javascript">

    function checkdati()
    {
    var nome = document.frmMail.nome.value;
    var caratteri_reg_expr=/[a-zA-Z\s]/

    if ((nome=="") || (nome==" ") ||(nome=="undefined") || !caratteri_reg_expr.test(nome))
    {
    alert("Attenzione! Campo NOME vuoto o incorretto.")
    document.frmMail.nome.focus()
    return (false)
    }

    }
    </script>

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Ma hai provato l'ultima modifica proposta?
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  7. #7
    no ma ho modificato var caratteri_reg_expr=/[a-zA-Z\s]/ come avevi detto e sopra ti ho fatto il riepilogo di come si comporta

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    La regexp andra` modificata, e per questo occorre sapere cosa vuoi (non lo hai detto), ma c'e` un altro errore di logica fuori dalla regexp, che non so dove sia, per trovare il quale occorre una modifica dello script.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  9. #9
    ma tutto sommato lo script va bene non capisco per quale motivo quando inserisco uno spazio e dei numeri non mi visualizza il msg

    <script language="javascript">

    function checkdati()
    {
    var nome = document.frmMail.nome.value;
    var caratteri_reg_expr=/[a-zA-Z\s]/

    if ((nome=="") || (nome==" ") ||(nome=="undefined") || !caratteri_reg_expr.test(nome))
    {
    alert("Attenzione! Campo NOME vuoto o incorretto.")
    document.frmMail.nome.focus()
    return (false)
    }

    }
    </script>

  10. #10
    salve ragazzi ho un piccolo problema per il controllo del capo codice fiscale dove voglio avere solo la posibilità di inserire solo lettere e numeri insomma un campo alfa numerico

    come posso risolvere ?

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 © 2024 vBulletin Solutions, Inc. All rights reserved.