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

    [ASP.NET] Utilizzo delle Checkbox

    Buongiorno,
    avrei bisogno di un suggerimento, ho una serie di dati da presentare in formato tabellare, dovrei però aggiungere una checkbox per ogni riga.

    Alla pressione di un asp:button, dovrei capire quali checkbox sono checked e quali no.

    Ora se avessi un checkboxlist l'oggetto mi fornirebbe in automatico le informazioni, ma dato che a tabella ed i checkbox vengono creati dinamicamente, e non so in che numero vengono creati, vorrei un suggerimento su quale sia il metodo migliore per recuperare le informazioni dopo il postback.

    Mi scuso se la risposta più sembrare elementare a molti, ma vi sarei grato se potreste fornirmi una panoramica di soluzioni, ringrazio tutti.
    Ultima modifica di lunarossa82; 01-02-2016 a 16:40

  2. #2

  3. #3
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,886
    Scorrendo la tabella (che non ci hai detto cosa è), "peschi" la CheckBox e ne recuperi la proprieta' Checked, tutto qui.

    Es:
    codice:
    foreach (GridViewRow row in GridView1.Rows)
    {
         CheckBox chk = row.Cells[0].Controls[0] as CheckBox;
         if (chk != null && chk.Checked)
         {
           // ... azione da fare se è spuntata
         }
    }

    PS: attenzione che Cells[0].Controls[0] non è il tuo caso, devi mettere la posizione giusta

  4. #4
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,886
    ps: sii piu' chiaro sulla frase "non so in che numero vengono creati"...

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    E' molto semplice.
    Lato pagina metti tanti
    <input name="check_delete" type="checkbox" value="<%#Eval("id_pozzo")%>" />
    quanti servono

    l'importante è il name e la proprietà value (nel mio caso id_pozzo della tabella pozzi

    lato server, si recuperano i check selezionati con la vecchia e semplice:

    Dim keys As String = Trim(System.Web.HttpContext.Current.Request.Form(" check_delete"))
    dove keys contiene i value selezionati separati da virgola

    non so se ci sia qualcosa di più semplice
    Pietro

  6. #6
    Quote Originariamente inviata da djciko Visualizza il messaggio
    Scorrendo la tabella (che non ci hai detto cosa è), "peschi" la CheckBox e ne recuperi la proprieta' Checked, tutto qui.

    Es:
    codice:
    foreach (GridViewRow row in GridView1.Rows)
    {
         CheckBox chk = row.Cells[0].Controls[0] as CheckBox;
         if (chk != null && chk.Checked)
         {
           // ... azione da fare se è spuntata
         }
    }

    PS: attenzione che Cells[0].Controls[0] non è il tuo caso, devi mettere la posizione giusta

    La tabella era una <asp:table> e la risposta che mi hai dato è quella che cercavo :-)

    Grazie a tutti per i preziosi consigli, siete stati gentilissimi.

  7. #7
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,886
    Quote Originariamente inviata da pietro09 Visualizza il messaggio
    la tabella pozzi
    ma che diamine di applicazione stai sviluppando ?

  8. #8
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Quote Originariamente inviata da djciko Visualizza il messaggio
    ma che diamine di applicazione stai sviluppando ?
    un sistema informativo ambientale.

    Pozzi, sorgenti, punti di campionamento, analisi, etc. etc.
    Pietro

  9. #9
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,886
    ahhh con "pozzi" credevo ti fossi agganciato a siti "alternativi"

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 © 2024 vBulletin Solutions, Inc. All rights reserved.