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

    problema con funzione per controllo form

    ciao a tutti
    avrei un problema con una funzione javascript !!

    Praticamente ho un form con dei checkbox. Almeno uno di questi deve essere selezionato, quindi ho creato una funzione che li controlla, ma per qualche ragione c'e' una riga che non va e non capisco il perche'... vi posto la funzione.

    codice:
    function check_checkbox(){
      var checkbox=new Array("paper","soilandclay","wood","hardcoreandbrick");
      var bool=0;	
      for (i=1;i<=4;i++){
     -->   if (document.forms.applicationform[checkbox[i]].checked){
          //alert("You checked one option !! GOOD !!");
          bool=1;
          break;
        }else continue;
      }
      if (bool==0){ 
        alert("You have to tick at least one option");
        return false;
      }else
      return submit;
    }
    La riga con la freccia in grassetto e' quella che mi crea il problema.
    se la commento, tutte le altre cose funzionano, anche se non mi submitta il form, ma il ciclo funziona... Se setto la variabile bool a 1 mi submitta il form normalmente, ma per qualche ragione l'if non va.. mi sapete spiegare il perche' ?

    Grazie in anticipo !!
    Nulla è impossibile. Il difficile è trovare la soluzione che renda l'impossibile possibile...
    http://www.eternaldream.it

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Puoi fare cosi....

    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    
    <html>
    <head>
    <title>Untitled</title>
    <script language="JavaScript" type="text/javascript">
    <!--
    
    function controlla() {
     if (! controllaCB() ) {
      alert('devi selezionare almeno un checkbox');
     } // if (! controllaCB() )
    } // function controlla()
    
    function controllaCB() {
     var oInput = document.getElementsByTagName('INPUT');
     for (i=0;i<oInput.length;i++) {
      curObj = oInput.item(i);
    	if (curObj.type == 'checkbox' && curObj.checked) {
    	 return true;
    	} // if (curObj.type == 'checkbox' && curObj.checked)
     } //  for (i=0;i<oInput.length;i++)
     return false;
    } // function controllaCB() 
    //-->
    </script>
    
    </head>
    <body>
    <input type="checkbox">
    
    <input type="checkbox">
    
    <input type="checkbox">
    
    <input type="checkbox">
    
    <input type="checkbox">
    
    <input type="checkbox">
    
    <input type="checkbox">
    
    <input type="checkbox">
    
    <input type="checkbox">
    
    <input type="button" value="contolla" onclick="controlla()"> 
    </body>
    </html>

  3. #3
    ti ringrazio...
    tutto risolto !
    Nulla è impossibile. Il difficile è trovare la soluzione che renda l'impossibile possibile...
    http://www.eternaldream.it

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.