Hämta värden från Checkbox

ASP

11 svar · 206 visningar · startad av eriks

Medlem sedan apr. 20011 418 inlägg
Trådstart#1

Hej!
Hur skriver man om man vill hämta ett värde från en checkbox? Att hämta värden från ett vanligt formulär blir ju Request.Form(...), men hur hämtar man egentligen från checkbox?
Tack! /Erik

Medlem sedan juni 200032 967 inlägg
#2

eftersom checkbox är ett vanligt formulärelement så är det request.form du ska använda (om du inte använder get förstås). funkar inte det?

Medlem sedan mars 20007 896 inlägg
#3

Som @nders säger, likadant :)
Men jag ger dej lite kåd också... ;)

If Request.Form("chkbox") then
    'klickad!
Else
    'meh!
End If

Jag är förbannat trött nu och har ont i foten, men den kodbiten borde fungera :)

Notera borde. ;)

Jag har för mig att en checkbox returnerar sant eller falskt... Stämmer inte det @nders?

Medlem sedan juni 200032 967 inlägg
#4

Stämmer inte det @nders?

inte en aning... :)

rent teoretiskt borde en checkbox returnera sant/falskt, men gör det inte. ej markerad blir ingenting, markerad säger on, om man inte använder value i <input>-taggen, då är det det som gäller då den är markerad.

tror jag. typ.

Medlem sedan mars 20007 896 inlägg
#5

Juste, det var så det va :)
on :)

Men prova min kod ändå, för om checkboxen inte är kryssad, returneras då inget, och då körs förhoppningsvis else-satsen istället för if-satsen :)

Medlem sedan sep. 2000232 inlägg
#6

man även skicka med ett "value" i checkboxelementet som man sedan kollar av.

Medlem sedan apr. 20011 418 inlägg
#7

Tack för alla svar. Men hur ska man göra om man har fem checkboxar (t.ex. fisk, kött, grönsaker, frukt, glass.) Om man kryssar i checkboxen vill jag att det som checkboxen står för (i detta fallet fisk, kött, grönsaker, frukt eller glass.) ska skrivas in i databasen. Hur gör jag då?

Medlem sedan mars 20002 836 inlägg
#8

hur spar du det i databasen?
i samma fält, eller egna fält??

Medlem sedan mars 20007 896 inlägg
#9

Du har samma namn på alla checkboxar hoppas jag? Det blir mycket enklare att lösa då...

SQL = "INSERT INTO tabell (datum, val) VALUES('" & Date & "', '" & Request.Form("namnPåCheckbox") & "')"
connectionObjekt.Execute(SQL)

Så blir det om du har ett fält i databasen som allt kan skrivas till. Request.Form("namnPåCheckbox") innehåller alla förkryssade alternativ, med ett kommatecken mellan. Ex:
fisk, kött, frukt

Medlem sedan apr. 20011 418 inlägg
#10

Jag ska försöka klargöra lite vad jag menar. Så här har jag ställt upp mina alternativ. Hur ska jag sedan skriva för att det ska fyllas i "Kött" eller "Fisk" i databasen (det ska stå i samma fält, jag har inte ett fält för varje alternativ). Om man kryssar i någon av dem nu (vilken som) så står ju bara "on". Hur ska jag göra???

<TABLE BORDER="1" CELLSPACING="0" CELLPADDING="0">
<TR><TD>
<input type="checkbox" name="C1">
</TD><TD><small><strong><font face="Arial">Kött:</font></strong></small></TD></TR>
<TR><TD>

<input type="checkbox" name="C2">
</TD><TD><small><strong><font face="Arial">Fisk</font></strong></small></TD></TR>

</TABLE>

Tack! /Erik

Medlem sedan juni 200032 967 inlägg
#11
<input type="checkbox" name="C1" value="Kött">
<input type="checkbox" name="C2" value="Fisk">

funkar inte det :q

Medlem sedan maj 2001431 inlägg
#12

Om du bara har ett fält betyder det att du bara tillåter ETT värde. Därav ska du inte avcända checkbox utan en radio-kanpp

<INPUT type="radio" name="mat" value="fisk">
<INPUT type="radio" name="mat" value="lött">
<INPUT type="radio" name="mat" value="kycklinga">

Sedan hämtar du maten så här i ASP

matratt = Request.Form("mat")

251 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)