Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 15 su 15
  1. #11
    si lavoro con php comunque grazie per la risposta, ti posto una parte dell'output html:

    Codice PHP:
    ......
    <
    input name="Nome[1]" type="text" value="">
    <
    input name="Cognome[1]" type="text" value="">
    <
    input name="E-mail[1]" type="text" value="">
    <
    input name="Nome[2]" type="text" value="">
    <
    input name="Cognome[2]" type="text" value="">
    <
    input name="E-mail[2]" type="text" value="">
    <
    input name="Nome[3]" type="text" value="">
    <
    input name="Cognome[3]" type="text" value="">
    <
    input name="E-mail[3]" type="text" value="">
    ecc ecc ecc 

  2. #12
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    allora io farei così...

    partendo dal presupposto che TUTTI i campi in questione devono essere compilati, mi sgancerei dall' oggetto js form (che potrebbe avre altri campi indipendenti da questo controllo) e mi aggancerei ad un oggetto unico che creo apposta per selezionare solo quei campi.. in questo caso potrebbe essere un div...

    quindi
    codice:
    <div id="anagrafiche">
    <input name="Nome[1]" type="text" value="">
    <input name="Cognome[1]" type="text" value="">
    <input name="E-mail[1]" type="text" value="">
    <input name="Nome[2]" type="text" value="">
    <input name="Cognome[2]" type="text" value="">
    <input name="E-mail[2]" type="text" value="">
    <input name="Nome[3]" type="text" value="">
    <input name="Cognome[3]" type="text" value="">
    <input name="E-mail[3]" type="text" value="">
    </div>

    in qesto modo se effettuo una chiamata all' oggeto con id= anagrafiche riesco ad isolare quello che mi interessa da tutto il resto del document.
    Una volta fatto questo posso ora eseguire un controllo su tutti i campi senza tenere in considerazione il nome (tanto sono solo quelli nel div) ma in base al tagname e al type e ad effetture il cotrollo stesso sul submit del form

    codice:
    function VerifyInputs(DivId)
      {
      var Collection=document.getElementById(DivId).getElementsByTagName('input');
      
      for (x in Collection)
        {
        if (Collection[x].type == 'text' && Collection[x].value =='') 
          {
          alert('prego controllare tutti i campi!!');
          return false;
          }
        }
      return true;
      }
    
    <form name="pippo" action="..." method="POST" onSubmit="return VerifyInputs('anagrafiche)">
    
    .....
    
    <div id="anagrafiche">
    <input name="Nome[1]" type="text" value="">
    <input name="Cognome[1]" type="text" value="">
    <input name="E-mail[1]" type="text" value="">
    <input name="Nome[2]" type="text" value="">
    <input name="Cognome[2]" type="text" value="">
    <input name="E-mail[2]" type="text" value="">
    <input name="Nome[3]" type="text" value="">
    <input name="Cognome[3]" type="text" value="">
    <input name="E-mail[3]" type="text" value="">
    </div>
    
    .....
    
    <input type="submit" value="invia">
    </form>
    al submit del form si scatena l' evento VerifyInputs('anagrafiche') e il form rimane in attesa di VerifyInputs('anagrafiche') che se trova un campo vuoto restiuisce false, e blocca l'invio del form, mentre con true da il libero invio al form
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  3. #13
    grazie per la risposta dottwatson... nel mio caso però non devo controllare solo che i campi siano tutti compilati, anzi alcuni non devono essere obbligatori.

    Precisamente devo controllare che: il campo "nome" sia compilato(è oggligratorio) e il campo "email" sia compilato e sia in una forma corretta(quindi vorrei usare la classica espressione che controlla la @, punti ecc ecc)...
    ...questi controlli devo farli per tutti i campi "name[x]" e per tutti i campi "email[x]"

    Mi puoi fare un esempio, io davvero non so come procedere... sono giorni che cerco una soluzione ma le mie conoscenze di javascript sono davvero minime!

    Grazie ancora per la risposta di prima!


  4. #14
    Ragazzi, credo di aver risolto per il campo "nome" ed eventuali altri campi semplici dove devo solo controllare che non siano vuoti... ora mi resta il problema del campo email...

    sto facendo così, però in questo modo non mi funziona correttamente:
    Codice PHP:
    function funzione2(){
        var 
    email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
        var 
    i=1;
        while(
    document.Contacts.elements["E-mail["+i+"]"]){
              if(
    document.Contacts.elements["E-mail["+i+"]"].value == ""){
                
    alert("Campo email "+i+" vuoto");
            }    
            else if(!
    email_reg_exp.test(["E-mail["+i+"]"]).value){
                
    alert("Campo email "+i+" non corretto!");
              }
              
    i++;
        }

    Così facendo riesco a verificare che il campo non sia vuoto, ma anche se è compilato bene, mi restituisce l'alert nell'else if (Campo email 1 non corretto! ecc ecc);

    Ho provato a compilarlo in diversi modi, ma il risultato non cambia, risulta sempre compilato male... dove sbaglio secondo voi??


  5. #15
    ho risolto così:

    Codice PHP:
    function funzione(){
        var 
    i=1;
        var 
    x=1;
        var 
    email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
        
        while(
    document.Contacts.elements["Nome["+i+"]"]){
              if(
    document.Contacts.elements["Nome["+i+"]"].value == ""){
                
    alert("Campo nome "+i+" vuoto");
              }
              
    i++;
        }
        
        while(
    document.Contacts.elements["E-mail["+x+"]"]){
              if(
    document.Contacts.elements["E-mail["+x+"]"].value == ""){
                
    alert("Campo email "+x+" vuoto");
            }    
            else if(!
    email_reg_exp.test(document.Contacts.elements["E-mail["+x+"]"].value)){
                
    alert("Campo email "+x+" non corretto!");
              }
              
    x++;
        }
        return 
    false;


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