Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126

    controllo checkbox checked

    ciao, faccio un controllo per vedere se è stato selezionato un checkbox:
    codice:
    function controllavalore(){
    if(!document.form1.checkdoc.checked){
    alert('Attenzione! Devi selezionare almeno un documento prima di eliminarlo!');
    return false;
    }
    return true;
    }
    richiamo la funzione all'onsubmit del form, ma checkbox selezionato o no,mi mostra sempre l'alert e mi fà il submit del form
    why?
    Voglio l'alt+s anche per FF

  2. #2
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    ciao dops,

    hai un solo checkbox con quel nome? Posteresti tutto il form?

  3. #3
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    Ciao Willy
    allora modificando un pò la situazione.. io ho una pagina che mi generea dinamicamente tanti checkbox per quanti record recupero dal database.. quindi la pagina si presenta con molti checkbox tutti con lo stesso nome.. Questa cosa non và bene se uso questo script:
    codice:
              <script language="javascript">
    
    function controllavalore(){
    if(!document.form1.checkdoc.checked){
    alert('Attenzione! Devi selezionare almeno un documento prima di eliminarlo!');
    return false;
    }
    return true;
    document.form1.submit();
    }
            </script>
    
    ...
    
    <input name="pulselimina" type="submit" id="pulselimina"  value="         ELIMINA..         "  onClick="return controllavalore();">
    Infatti se ci fosse un solo checkbox tutto andrebbe bene.. come posso fare?
    Voglio l'alt+s anche per FF

  4. #4
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    codice:
    <script language="javascript">
    function controllavalore(){
      var cc = document.form1.checkdoc;
      var almenouno=false;
      if(cc.length){
        for(i=0;i<cc.length;i++)
          if(cc[i].checked)almenouno=true;
      }
      else{
        almenouno = document.form1.checkdoc.checked
      }
      if(!almenouno){
        alert('Attenzione! Devi selezionare almeno un documento prima di eliminarlo!');
        return false;
      }
      else return true;
    }
    </script>
    e poi richiama la funzione nell'onsubmit del form così
    codice:
    <form onsubmit="return controllavalore()">

  5. #5
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    che dire.. grazie mille
    Voglio l'alt+s anche per FF

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    68
    Stò affrontando lo stesso problema ma a me non funzia e da questo errore:

    length è nullo o non è un oggetto alla riga:

    if(cc.length){



    Potrebbe andare in conflitto che mi permette di selezionare tutte le checkbox cliccandone una apposita ?

  7. #7
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    posta un po' di codice che ci diamo un'occhiata

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    68
    He he auguri stò riprogettando il nuke del mio sito e questa è la pagina che gestisce le news (dà finire)...cmq la checkbox da controllare è quella chiamata "flag" ah il java per selezionare tutte le checkbox funzia

    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <%
    ' acp_news.asp v. 1.0.00
    ' Prima relase iniziata Domenica 3 Ottobre 2004 alle ore 0.13
    ' Copyright: (C) 2004 Dazeroacento.com
    ' Email: maxsona@dazeroacento.com - maxsona@tiscalinet.ir
    %>
    
    <html>
    <head>
    <title>:: Administrator Control Pannel - Dazeroacento.com - News ::</title>
    <link rel="stylesheet" href="../styles/OrangeBlue/stile.css">
    </head>
    <body>
    <%
    ' Rileviamo la pagina da visualizzare dalla stringa dell'URL
    If pag="" Then
    pag = 1
    Else
    pag = CInt(pag)
    End If
    %>
    <script language="JavaScript">
    <!-- Questo java permette di selezionare/deselezionare tutti i record con un click nella prima checkbox
       function CheckAll()
       {
          for (var i=0;i<document.TheForm.elements.length;i++)
          {
             var e = document.TheForm.elements[i];
             if (e.name != "checkall")
                e.checked = document.TheForm.checkall.checked;
          }
       }
       //-->
    </script>
    <script language="javascript">
    function controllavalore(){
      var cc = document.TheForm.checkdoc;
      var almenouno=false;
      if(cc.length){
        for(i=0;i<cc.length;i++)
          if(cc[i].checked)almenouno=true;
      }
      else{
        almenouno = document.TheForm.checkdoc.checked
      }
      if(!almenouno){
        alert('Devi selezionare almeno un record !');
        return false;
      }
      else return true;
    }
    </script>
    <table width="982" cellpadding="0" cellspacing="0" class="MainTable">
    <tr>
    <td>
    <table width="981" border="0" cellpadding="0" cellspacing="0" class="SubMainTable">
    <tr>
    <td colspan="5"></td>
    </tr>
    <tr>
    <td width="10"></td>
    <td width="160"></td>
    <td width="20"></td>
    <td width="781"><table width="781" border="0" cellpadding="0" cellspacing="0" class="HeadDataTable">
    <tr>
    <td width="130">[img]../styles/OrangeBlue/news.gif[/img]</td>
    <td width="555" background="../styles/OrangeBlue/top_bg.gif"></td>
    <td width="96" rowspan="2">[img]../styles/OrangeBlue/icon_news.gif[/img]</td>
    </tr>
    <tr>
    <td colspan="2">
    <table width="685" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td width="8">[img]../styles/OrangeBlue/top_border_left.gif[/img]</td>
    <td class="HeadDataTd"><div align="center">Elenco news, nel database sono presenti # articoli </div></td>
    </tr>
    </table></td>
    </tr>
    </table>
    <table width="781" cellpadding="0" cellspacing="0" class="DataTable">
    <form method="POST" form name="TheForm" action="acp_news.asp" onsubmit="return controllavalore()">
    <tr>
    <th width="25" height="25" nowrap class="DataTdTitle">#</th>
    <th width="120" nowrap class="DataTdTitle">Autore</th>
    <th width="65" nowrap class="DataTdTitle">Data</th>
    <th nowrap class="DataTdTitle">Titolo</th>
    <th width="45" nowrap class="DataTdTitle">Stato</th>
    <th width="25" nowrap class="DataTdTitle"></th>
    <th width="25" nowrap class="DataTdTitle"><input name="checkall" type="checkbox" id="checkall" value="" onClick="CheckAll();"></th>
    </tr>
    <%
    ' Creo la stringa SQL
    SQL="Select news_id, news_author, news_data, news_title, news_status from dazeroacento_news ORDER BY news_id DESC"
    Set news_rs = Server.CreateObject("ADODB.Recordset")
    ' Settiamo il numero di record per pagina
    news_rs.PageSize = 10
    news_rs.Open sql, conn, 3, 3
    news_rs.AbsolutePage = pag
    ' Creo il record set
    For i=1 to news_rs.PageSize
    %>
    <tr>
    <td height="25" class="DataTdData"></td>
    <td height="25" class="DataTdData"><div align="center"><%=news_rs("news_author")%></div></td>
    <td height="25" class="DataTdData"></td>
    <td height="25" class="DataTdData"></td>
    <td height="25" class="DataTdData"><div align="center"><%if news_rs("news_status")=true then%>[img]../styles/OrangeBlue/acp/icon_active.gif[/img]<%else%>[img]../styles/OrangeBlue/acp/icon_inactive.gif[/img]<%end if%></div></td>
    <td height="25" class="DataTdData"></td>
    <td height="25" class="DataTdData"><div align="center"><input name="flag" id="flag" type="checkbox" value="<%=news_rs("news_id")%>"></div></td>
    </tr>
    <% 
    ' Chiudo il recordset
    news_rs.MoveNext
    If news_rs.EOF Then Exit For
    Next
    %>
    <tr>
    <td background="../styles/OrangeBlue/bg1.gif" height="31" colspan="7">
    <table width="100%"  border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td height="31" valign="middle"><input name="submit" type="submit" value="Cancella selezionati"></td>
    <td width="145"><div align="center" class="nav">PrecedenteSuccessiva</div></td>
    </tr>
    </table>
    </td>
    </tr>
    </form>
    </table>
    <table width="781" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td width="8">[img]../styles/OrangeBlue/bottom_left.gif[/img]</td>
    <td width="765" background="../styles/OrangeBlue/bottom_bg.gif"></td>
    <td width="8">[img]../styles/OrangeBlue/bottom_right.gif[/img]</td>
    </tr>
    </table>
    </td>
    <td width="10"></td>
    </tr>
    <tr>
    <td colspan="5"></td>
    </tr>
    </table>
    </td>
    </tr>
    </table>
    </body>
    </html>

  9. #9
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    Originariamente inviato da willybit
    posta un po' di codice che ci diamo un'occhiata
    avevo detto un po'

    i checkbox della tua pagina si chiamano flag non checkdoc
    tu hai scritto
    codice:
    function controllavalore(){
      var cc = document.TheForm.checkdoc;
      ...
    e invece è
    codice:
    function controllavalore(){
      var cc = document.TheForm.flag;
      ...

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    68
    Originariamente inviato da willybit
    avevo detto un po'

    i checkbox della tua pagina si chiamano flag non checkdoc
    tu hai scritto
    codice:
    function controllavalore(){
      var cc = document.TheForm.checkdoc;
      ...
    e invece è
    codice:
    function controllavalore(){
      var cc = document.TheForm.flag;
      ...
    Funziona ! VVoVe:

    Dato che ci sei nella stessa funzione mi puoi inserire il codice che mi chiede se sono sicuro di mandare il form ?

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.