ho il seguente codice:Controllare se la casella è selezionata o meno - ASP.NET
(some.aspx.cs)
if(Page.IsPostBack)
{
bool apple2 = false;
bool pizza2 = false;
bool orange2 = false;
if (apple.Checked)
apple2 = true;
if (pizza.Checked)
pizza2 = true;
if (orange.Checked)
orange2 = true;
}
(some.aspx)
<tr>
<td>Food:</td>
<td>Apple <input type="checkbox" name="food" id="apple" value="apple" runat="server" />Pizza <input type="checkbox" name="food" id="pizza" value="pizza" runat="server" />Orange <input type="checkbox" name="food" id="orange" value="orange" runat="server" /></td>
</tr>
Ora invio le variabili booleane al database SQL. Il problema riguarda solo le caselle deselezionate. Voglio dire, quando controlli qualche checkbox lo invia come vero (e giusto) ma quando li deseleziono rimane lo stesso (vero).
Aggiunta: Perché troppo poco? ecco una query ... niente di speciale qui
string q = string.Format(@"UPDATE tblUsers SET ......., apple='{8}', orange='{9}' WHERE id='{10}'", ...., apple2, orange2, id);
lib.sql_query(q); // using my sql library...
il tipo di dati è po '.... ho provato anche con lo spago ... ma senza successo
P.S. - Ho anche provato con Request.Form [ "mela"], e il deselezionare funzionato ... ma purtroppo l'assegno non ... quando posso controllare la casella di controllo che mi genera un errore:
Conversion failed when converting the varchar value 'on' to data type bit.
Somebody ?
Troppe poche informazioni per vedere cosa sta succedendo. Cosa succede sul lato SQL? – Carra
Quale tipo di dati è mela e arancione nella tabella SQL? –