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

    confirm e controllo su campi dinamici

    Ciao!
    Ho un form che crea da database (in PHP) una serie di campi (select o radiobutton, ma non è questo il problema)...

    Si tratta di esercizi scolastici online, io vorrei che quando viene inviato il form comparisse 1confirm per avvertire, se necessario, che alcune domande non hanno avuto risposta.

    Ho fatto qualcosa del genere, ma non funziona assolutamente! XD

    -----------------------CODICE js-----------------------------------------
    <script language="Javascript">
    var click=0;
    var opts=0;
    function clicca() {
    if(this.checked==true) { click++; }
    }
    </script>
    --------------------- PARTE DEL FORM---------------------------


    <?
    $res_domanda = mysql_query("SELECT * FROM wow_domande WHERE id_titolo = '$id_titolo' ORDER BY id ASC");
    while ($domanda = mysql_fetch_array($res_domanda)) {

    $res_risposta = mysql_query("SELECT * FROM wow_opzioni WHERE id_domanda = '$domanda[id]' ORDER BY n_opzione ASC");
    while ($risposta = mysql_fetch_array($res_risposta)) { ?>


    <input type="radio" value="<? echo $risposta[n_opzione]; ?>" name="<? echo $domanda[id]; ?>" OnClick="clicca()">
    <script language="Javascript">opts++;</script>

    <input type="button" value="Correggi" OnClick="if(click!=opts) {return confirm('Non hai risposto a tutte le domande! Continui lo stesso?');}">

    --------------------------------------------------------------------


    Il problema è che non mi accetta il this.checked==true...
    Ma anche se lo scrivo per intero per ogni radiobutton, del tipo:

    if(document.myform.<? echo $domanda[id]; ?>[0].checked==true) { click++; }
    else if(document.myform.<? echo $domanda[id]; ?>[1].checked==true) { click++; }
    else if(document.myform.<? echo $domanda[id]; ?>[2].checked==true) { click++; }

    non va comunque!!!
    Non mi intendo molto di javascript, sarà sicuramente un errore banale...
    Please help me!


    PS:ho provato a cercare nel forum ma non riesco ad adattare nulla al mio caso ; ;

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <script type="text/javascript" language="javascript">
    function Controllarisposte(f){
    r1="";
    r2="";
    if(!f.r1[0].checked && !f.r1[1].checked && !f.r1[2].checked){
    r1="Non hai risposto alla domanda 1 proseguire?\n";
    }
    if(!f.r2[0].checked && !f.r2[1].checked && !f.r2[2].checked){
    r2="Non hai risposto alla domanda 2 proseguire?\n";
    }
    if((r1!="")||(r2!="")){
    err="Attenzione!!!!\n\n";
    if(confirm(err+r1+r2)){
    return;
    }else{
    return false;
    	}
      }
    }
    </script>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Documento senza titolo</title>
    </head>
    
    <body>
    <form action="" method="post" name="theform" id="theform" onSubmit="return Controllarisposte(document.theform)">
      <table width="100%"  border="0" cellspacing="1" cellpadding="0">
        <tr>
           <td width="19%">Risposta1 </td>
              <td width="81%"><input name="r1" type="radio" value="risp1">
                si <input name="r1" type="radio" value="risp2">
    no            <input name="r1" type="radio" value="risp3">forse</td>
            </tr>
            <tr>
              <td>Risposta2</td>
              <td><input name="r2" type="radio" value="risp1">
                si <input name="r2" type="radio" value="risp2">
    no            <input name="r2" type="radio" value="risp3">forse</td>
            </tr>
            <tr>
                <td colspan="2"> 
                    
    
    </p>
                    <p align="center"><input type="submit" name="Submit" value="invia"></p>
                </td>
            </tr>
          </table></form>
    </body>
    </html>
    Questo verifica se almeno un radio e spuntato nella rispetiva domanda.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    grazie mille funziona

    Ora vedo se riesco ad adattarlo a tutti i tipi di form!
    Thanks,
    Elly.

  4. #4
    Utente di HTML.it L'avatar di elisa21
    Registrato dal
    May 2004
    residenza
    Lucca
    Messaggi
    246
    e se le domande sono recuperate dinamicamente da db Access? come posso controllare che almeno una delle delle 3 opzioni di tutte le domande estratte sia selezionata?


    grazie dell'aiuto
    elisa
    L'immaginazione è l'intelligenza che si diverte

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.