Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di angelicab
    Registrato dal
    Sep 2001
    Messaggi
    1,515

    js - controllo form dinamico con checkbox e select

    ciao!
    ho un form creato dinamicamente prendendo dei record da un DB ...

    nel form (per ogni record) ho una checkbox e una select che rimane disabilitata sino a che l'utente mette il segno di spunta nella checkbox ... una volta spuntata la checkbox l'utente dovrebbe scegliere un valore nella select .. io vorrei controllare che questo avvenga prima dell'invio dei dati della form ..

    ho pensato ad una cosa simile ..

    codice:
    <script language="JavaScript">
    function ControllaForm () 
    {
    
    function ControllaForm (nRecords) 
    {
    var i = 0
    for (i=0; i<nRecords; i++) 
    { 
    if(document.form1.elements["valida"+i].checked==true && document.form1.elements["idcat"+i].value=="0")
    { 
    alert("Seleziona una categoria!!");
    document.form1.elements["idcat"+i].focus();
    return false;
    }
    alert("categoria!!");
    return true;
    }
    }
    
    </script>
    
    
     <form name="form1" method="post" action="intra1.asp" onSubmit="return ControllaForm(totalerecord);">
    <input name="valida<% = i %>" type="checkbox" id="valida<% = i %>" onclick="this.form.IDcat<% = i %>.disabled=false"> 
    <select name="IDcat<% = i %>" class="campoform" id="IDcat<% = i %>" disabled>
    <option value="0" selected>Seleziona la categoria</option>
    <option value="1" selected>Categoria 1</option>
    <option value="2" selected>Categoria 2</option>
    <option value="3" selected>Categoria 3</option>
    </select>
    <input name="Submit" type="submit" class="campoform" value="CONFERMA I DATI">
    </form>
    ma non sembra funzionare ...
    cosa sbaglio?
    ........\ | /......
    ......(@ @)).....
    -oOO-(_)-OOo-
    ......Angie.....

  2. #2
    Utente di HTML.it L'avatar di angelicab
    Registrato dal
    Sep 2001
    Messaggi
    1,515
    ........\ | /......
    ......(@ @)).....
    -oOO-(_)-OOo-
    ......Angie.....

  3. #3
    Utente di HTML.it L'avatar di angelicab
    Registrato dal
    Sep 2001
    Messaggi
    1,515
    allora .. il controllo l'ho sistemato così .. solo che ci deve essere qualche problema di sintassi perchè quando ci sono più select il controllo lo fa solo sulla prima ..


    <script language="JavaScript">
    function ControllaForm (nRecords)
    {
    alert (nRecords);
    for (i=1;i<nRecords;i++)
    {
    alert("i: " + i);
    alert("idcat: " +document.form1.elements["IDcat"+i].value);
    if(document.form1.elements["IDcat"+i].value=="0" && document.form1.elements["valida"+i].checked)
    {
    alert("Seleziona una categoria!!");
    document.form1.elements["IDcat"+i].focus();
    return (false);
    }
    return (true);
    }
    }
    </script>
    ........\ | /......
    ......(@ @)).....
    -oOO-(_)-OOo-
    ......Angie.....

  4. #4
    Utente di HTML.it L'avatar di angelicab
    Registrato dal
    Sep 2001
    Messaggi
    1,515
    nessuno sa aiutarmi??
    ........\ | /......
    ......(@ @)).....
    -oOO-(_)-OOo-
    ......Angie.....

  5. #5
    Originariamente inviato da angelicab
    nessuno sa aiutarmi??
    dai, che ora risolviamo il problema!
    come si chiama l'i-esimo checkbox e l'i-esima select associata?

  6. #6
    Utente di HTML.it L'avatar di angelicab
    Registrato dal
    Sep 2001
    Messaggi
    1,515
    Originariamente inviato da var
    dai, che ora risolviamo il problema!
    come si chiama l'i-esimo checkbox e l'i-esima select associata?

    le checkbox e le select si chiamano "valida<%=i%>" e "IDcat<%=i%>" dove 'i' sta per il numero di record estratti dal db .. non posso sapere in anticipo se l'ultima checkbox o l'ultuma select saranno "valida10" o "valida100" .....
    però posso il numero dei record e cioè 'i' ...
    ........\ | /......
    ......(@ @)).....
    -oOO-(_)-OOo-
    ......Angie.....

  7. #7
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Uno degli errori era il nome idcat che doveva essere scritto IDCat ma questo l'hai visto.
    Poi c'è la variabile totalerecord che non ha nessun valore.

    Dovresti postare non il codice asp ma il codice html della pagina generata.

  8. #8
    Originariamente inviato da angelicab
    le checkbox e le select si chiamano "valida<%=i%>" e "IDcat<%=i%>" dove 'i' sta per il numero di record estratti dal db .. non posso sapere in anticipo se l'ultima checkbox o l'ultuma select saranno "valida10" o "valida100" .....
    però posso il numero dei record e cioè 'i' ...
    no problem!
    allora, prova così:

    codice:
    function controllo(f){
     var e=f.elements;
     for(var i=0;i<e.length;i++)
      if(e.type=="checkbox" && e.checked && e[i].name.indexOf('valida')!=-1){
       if(e["IDcat"+(i+1)].selectedIndex==0) {
        alert("Selezionare una voce per l'opzione "+e['IDcat'].name+".");
        e["IDcat"].focus();
        return false;
       }
      }
     return true;
    }
    fammi sapere. :)

  9. #9
    Utente di HTML.it L'avatar di angelicab
    Registrato dal
    Sep 2001
    Messaggi
    1,515
    sorry .. la variabile totalerecord è valorizzata ed è il totale dei record visualizzati ..
    ........\ | /......
    ......(@ @)).....
    -oOO-(_)-OOo-
    ......Angie.....

  10. #10
    Utente di HTML.it L'avatar di angelicab
    Registrato dal
    Sep 2001
    Messaggi
    1,515
    Originariamente inviato da var
    no problem!
    allora, prova così:

    codice:
    function controllo(f){
     var e=f.elements;
     for(var i=0;i<e.length;i++)
      if(e.type=="checkbox" && e.checked && e[i].name.indexOf('valida')!=-1){
       if(e["IDcat"+(i+1)].selectedIndex==0) {
        alert("Selezionare una voce per l'opzione +"e['IDcat'].name+".");
        e["IDcat"].focus();
        return false;
       }
      }
     return true;
    }
    fammi sapere.
    function controllo(f) ....

    f ... sarebbe??
    ........\ | /......
    ......(@ @)).....
    -oOO-(_)-OOo-
    ......Angie.....

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.