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

    controllare la lunghezza di un campo di un form

    Ciao,
    premetto che di javascript non sò quasi niente. Volevo però validare lato client un form per la registrazione sul mio sito e mi servirebbero alcuni consigli.
    Per vedere se il campo 'nome' è stato compilato scrivo:
    if (document.modulo.nome.value == "") {
    alert("Il campo Nome è obbligatorio.");
    document.modulo.nome.focus();
    return false;
    }
    dove modulo è il nome del form.

    Ora vorrei controllare se un campo è di una certa lunghezza (es. se 'nome' è di 4 lettere).

    Poi vorrei sapere se c'è un modo veloce per fare un redirect al seguito di un click su un pulsante. Ad esempio se l'utente clicca su Annulla ritorna alla home page.


    Spero di essere stato chiaro. Ringrazio anticipatamente per l'aiuto!

  2. #2
    la lunghezza e' contenuta nell'attributo document.nomeform.nomecampo.value.length.

    per la seconda domanda:

    codice:
    <input type="button" onclick="if(confirm('Cambiare pagina?')) window.location.href='nuovapagina.htm'; else window.location.href='homepage.htm';" name="pulsante" value="Go" />
    ciao

  3. #3
    Ciao,
    un'altra domandina....

    come faccio a controllare se un input di tipo 'radio' è vuoto oppure no?

    Il metodo fin'ora usato non funziona!

    codice:
    if (document.modulo.tipo.value == "") {
               alert("Il campo M/F è obbligatorio.");
               document.modulo.tipo.focus();
               return false;
            }
    codice:
    <input name="tipo" type="radio" value="true">M
    <input name="tipo" type="radio" value="false">F
    ...un consiglio?

    Grazie.

  4. #4
    Altro problemino...

    codice:
    if ((document.modulo.cap.value == "") || isNaN(document.modulo.cap.value) || (document.modulo.cap.value.lenght < 6)) {
               alert("Il campo CAP è numerico e obbligatorio.");
               document.modulo.cap.focus();
               return false;
            }
    La condizione document.modulo.cap.value.lenght < 6 non risulta mai vera...come mai? Anche mettendo document.modulo.cap.value.lenght != 5 non si ottiene nessuna risposta!


    come ovviare?

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Originariamente inviato da nrocco
    Ciao,
    un'altra domandina....

    come faccio a controllare se un input di tipo 'radio' è vuoto oppure no?
    Devi spiegare cosa intendi per "campo radio vuoto".
    I radio non si possono riempire da parte dell'utente: si puo` solo sceglierne uno o l'altro, ma il value viene messo dal programmatore.

    Forse intendi verificare se nessuno e` selezionato?
    Non e` una prassi corretta, dato che in una collezione uno deve essere sempre selezionato (pero` alcuni browser molto diffusi permettono una collezione di radio in cui nessuno e` selezionato).

    La cosa piu` corretta sarebbe inserire una terza opzione (eventualmente nascosta), che viene selezionata di default:
    <input type="radio" name="sesso" value="n" checked="checked" style="display:none;">
    <input type="radio" name="sesso" value="m"> maschio

    <input type="radio" name="sesso" value="f"> femmina


    Poi devi testare quale della collezione e` selezionato o se e` selezionato il primo:
    if(....sesso[0].checked) alert("non hai selezionato ...");
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    Si intendevo verificare che l'input fosse selezionato.
    Grazie, quel metodo funziona.


    Riguardo all'altro problema sai dirmi niente?
    Grazie ancora

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    So troppo poco della pagina, e da quanto posti non riesco a capire.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  8. #8
    Allora...cerco di spiegarmi meglio:

    C'è un form di registrazione e vorrei controllare che il campo CAP (codice avviamento postale) sia lungo esattamente 5 cifre per evitare inserimenti errati.
    A questo proposito ho scritto:
    codice:
    if ((document.modulo.cap.value == "") || isNaN(document.modulo.cap.value) || (document.modulo.cap.value.lenght != 5 )) {
               alert("Il campo CAP è numerico e obbligatorio.");
               document.modulo.cap.focus();
               return false;
            }
    ...ma l'ultima condizione dell'if non risulta mai vera e quindi un utente nel campo CAP può scrivere quanti caratteri vuole.

    In alternativa potrei settare la lunghezza massima del campo a 5 caratteri...ma poi dovrei comunque controllare che non ne vengano inseriti di meno!
    Quindi così il codice sarebbe:
    codice:
    if ((document.modulo.cap.value == "") || isNaN(document.modulo.cap.value) || (document.modulo.cap.value.lenght < 5)) {
               alert("Il campo CAP è numerico, obbligatorio e di 5 cifre.");
               document.modulo.cap.focus();
               return false;
            }
    Spero di essere stato chiaro.
    Ti ringrazio per l'aiuto.

    Ciao

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    cosa e` la proprieta` lenght ?
    Volevi scrivere forse length ?

    Vedi poi questa alternativa (a tutto l'if):
    if (!document.modulo.cap.value.match(/^\d{5}$/) ) ...
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  10. #10
    Benissimo...questo metodo funziona per campi a lunghezza fissa...tipo il CAP che è di 5 caratteri.
    :master: Ma se volessi verificare se un certo campo è di una certa lunghezza?

    es. if(......value.lenght < 8)

    il modo dell'esempio non funziona!!!

    Grazie

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.