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

    controllo spunta su checkbox di 2 tabelle stessa pagina

    ho questa funzione che mi controlla se ho cliccato almeno su una checkbox
    il problema è che ho 2 distinte tabelle in una stessa pagina con file di checkbox
    questo controllo va fatto quando clicco su un bottone riferito ad una tabella con una fila di check box invece lo fa su tutte e due le tabelle... come faccio a fare questo controllo per i check box della tabella 1 e farne un'altro per i checkbox tabella 2????
    forse dovrei inserire il nome delle 2 check box???
    mi aiutate x favore ????

    function CaricaTABELLA1(ID,frm)
    {
    var rv = false;
    var idx = 0 ;

    for (var i=0;i<frm.elements.length;i++)
    {
    if (frm.elements[i].type && frm.elements[i].type.toLowerCase() =="checkbox" && frm.elements[i].checked) idx++ ;

    }

    if (idx == 0)
    {
    alert("Attenzione non ha scelto nessun Cliente");
    return false;
    }

    }

  2. #2
    secondo me devi procedere cosi..

    quasi sicuramente i gruppi di check box sono due come dici no?

    quindi sono due collezioni...

    la funzione deve effettuare il controllo sulla prima collezione e vedere se almeno uno e checcato successivamente sulla seconda e guardando la stessa cosa.

    quindi farei la funzione di controllo magari sul submit.

  3. #3
    bè a quello c'ero arrivato ... il punto è come si fa???

  4. #4
    comee si fa a controllare una collezione?

  5. #5
    puo andare bene un esempio cosi?

    ho cercato di farlo in modo semplice con delle funzioni che si possono riusare.

    Codice PHP:
    <html
        <
    head
            <
    title>aste</title
            <
    SCRIPT LANGUAGE="JavaScript"
                var 
    indicefocus=0
                function 
    isChecked(elemento,indice
                { 
                    var 
    mycheck=false
                    for (
    0elemento.lengthi++) 
                    { 
                        if(
    elemento[i].checked
                        { 
                            
    mycheck=true
                        } 
                    }             
                    if(!
    mycheck
                    { 
                        
    indicefocus=indice
                        
    alert("Non hai compilato la domanda numero "+indicefocus); 
                    } 
                    return 
    mycheck
                } 
                function 
    controllocampi() 
                { 
                    
    errore=false
                    for (
    indice 1indice <=2indice++) 
                    { 
                        if(!
    isChecked(document.test.elements["domanda"+indice],indice)) 
                        { 
                            
    errore=true;
                            break; 
                        }       
                    }                  
                    if(
    errore
                    { 
                        
    document.test.elements["domanda"+indicefocus][0].focus();  
                    } 
                    else 
                    { 
                        
    alert("ho inviato tutto");                     
                    } 
                }              
            
    </script> 
        </head> 
        <body> 
            <form name="test" id="test" action="javascript:controllocampi();"> 
                DOMANDA 1
     
                <input id="domanda1" name="domanda1" type="checkbox" value="1" />A

                <input id="domanda1" name="domanda1" type="checkbox" value="2" />B

                <input id="domanda1" name="domanda1" type="checkbox" value="3" />C

                <input id="domanda1" name="domanda1" type="checkbox" value="4" />D

                
     
                DOMANDA 2
     
                <input id="domanda2" name="domanda2" type="checkbox" value="1" />A

                <input id="domanda2" name="domanda2" type="checkbox" value="2" />B

                <input id="domanda2" name="domanda2" type="checkbox" value="3" />C

                <input id="domanda2" name="domanda2" type="checkbox" value="4" />D

                
     
                <input type="submit" value="INVIA" />
            </form>
        </body>
    </html> 

  6. #6
    grazie marco
    lo provo subito e ti faccio sapere

  7. #7

  8. #8
    MARCO la funzione va bene
    l'unico problema è che io recupero i dati da request.form della pagina precedente e quindi anche se metto una spunta sul check dell'altra tabella il dato mi viene riportato nella pagina successivo... come potrei fare in modo che
    il bottone riferito alla tabella 1 mi riconosca soltanto l'id della riga del check spuntato di quella tabella senza considerare i check della tabella 2
    ed il bottone riferito alla tabella 2 deve riconoscere solo i check della tabella 2 senza considerare quelli della tabella 1

    complicato?

  9. #9
    in questo tratto di funzione

    Codice PHP:
        function controllocampi() 
                { 
                    
    errore=false
                    for (
    indice 1indice <=2indice++) 
                    { 
                        if(!
    isChecked(document.test.elements["domanda"+indice],indice)) 
                        { 
                            
    errore=true
                            break; 
                        }        
                    }                   
                    if(
    errore
                    { 
                        
    document.test.elements["domanda"+indicefocus][0].focus();   
                    } 
                    else 
                    { 
                        
    alert("ho inviato tutto");                      
                    } 
                } 
    se vedi in particolare la sezione for (indice = 1; indice <=2; indice++)

    il codice dice alla pagina di analizzare tutti quei gruppi di checkbox con prefisso "domanda" e giocando con l'indice e il ciclo guarda quindi i gruppi domanda1,domanda2..... in questo caso bisognerebbe adattare il controllo solo al gruppo che vuoi te magari solo al gruppo domanda1 o domanda2...

  10. #10
    si infatti è su quella funzione che stavo lavorando
    ho provando a crearne due diverse chiamate controllacampi1 e controllacampi2 per essere poi richiamate ciascuna dal bottone che fa riferimento alla propria tabella ma non funge

    dovrei passare gli id delle righe tramite le checkbox spuntate via href e non request.form

    cioè se clicco il bottone1 della tabella1 mi deve passare nell'altra pagina soltanto gli ID delle checkbox selezionate della tabella1

    cioè se clicco il bottone2 della tabella2 mi deve passare nell'altra pagina soltanto gli ID delle checkbox selezionate della tabella2

    questo è in sintesi quello che dovrei fare....
    come si potrebbe fare????

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.