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

    Controllo campo al click sul campo successivo

    Salve a tutti.
    Mi trovo alle prese con una richiesta un po' strana.
    Dovrei fare in modo che in un form, ogni qualvolta un utente clicca sul campo input successivo a quello in cui ha appena scritto (o avrebbe dovuto scrivere), lo script controlli se il campo è stato compilato oppure no.

    In pratica il form è questo:
    codice:
    <form action="send.php" method="post">
    <label for="nome">*Nome: </label> <input type="text" name="nome" id="nome" />
    
    <label for="cognome">*Cognome: </label> <input type="text" name="cognome" id="cognome" />
    
    <label for="mail">*Mail: </label> <input type="text" name="mail" id="mail" />
    
    <label for="note">Note: </label> <input type="text" name="note" id="note" />
    
    </form>
    * campi obbligatori
    Non conoscendo, o poco, javascript, ho pensato di mettere nella HEAD questo script:
    Codice PHP:
    <script language="javascript">
    <!-- 

    function 
    test(id) {
      if (
    this.form.getElementById(id).value="")
        
    alert("Non hai compilato i campi obbligatori!")
    }

    // -->
    </script> 
    e in ogni input aggiungere l'evento: onclick="test(nome);" , dove naturalmente l'id tra parentesi sarà quella dell'input immediatamente precedente.

    Però non funziona... Dove sbaglio? Grazie


  2. #2
    Trafficando un po' ho modificato la funzione nel seguente modo:

    Codice PHP:
    <script language="javascript">
    <!-- 

    function 
    test(id) {
      if (
    document.form.id.value="undefined") {
        
    alert("Non hai compilato i campi obbligatori!");
      } else {
        
    alert("Ok!");
      }
    }

    // -->
    </script> 
    In questo modo funziona (ma è corretto?!), solo che vorrei impedire all'utente di poter scrivere nel campo successivo nel caso un cui il valore del campo precedente sia undefined. Come potrei fare?

  3. #3
    Ho trovato!

    Posto la soluzione

    Codice PHP:
    <script language="javascript">
    <!-- 

    function 
    test(id) {
      var 
    ricerca document.getElementById(id).value
      if(
    ricerca==""){
        
    alert("Non hai compilato i campi obbligatori!");
        
    document.getElementById(id).focus();    
      } 
    }

    // -->
    </script> 
    E nell'input:
    <label for="cognome">*Cognome: </label> <input type="text" name="cognome" id="cognome" onclick="javascript:test('nome')" />



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.