Halloj där ute. Annars så kan du döpa dem till samma namn men ge dem olika värden. En <b>For Each</b>-loop tycker jag borde fungera. Endast de checkboxar som är ikryssade skickas. Jodå, om du döper alla till samma name och har exempelvis 1,3 och 5 markerad så när du skriver: Tack för alla era svar. Nu funkar det, använde varianten med kommaseparerade värden. Vad jobbigt att behöva splitta. Där tycker jag att PHP är smidigare som kan placera dem i en array. <b>Där tycker jag att PHP är smidigare som kan placera dem i en array.</b>Kontrollera checkboxar
Tanken är följande, en helv... massa rader kommer att rabblas upp och användaren kommer i det läget få markera just de poster han är intresserad av genom av bocka för dessa värden i en checkbox, problemet är ju bara det att jag aldrig kan veta exakt hur många checkboxar det kommer att bli som användaren bockat för eftersom listan hämtas upp ur en databas.
Namnet på checkboxen kommer att vara relaterad till postens ID i databasen.
Finns det något smidigt sätt att kunna kontrollera vilka ID'n som ska behandlas eftersom man som innan nämndes aldrig vet exakt vad checkboxarna kommer att heta eller hur många de kommer att vara?Sv: Kontrollera checkboxar
Sätt name till id och value exempelvis till det id som du har i din tabell. Sedan vid submit kan du loopa samtliga kontroller och säga att om namnet börjar på b_ så hämtar du "130" och vet vilken det berör.
Ex: value=1 name=b_130Sv: Kontrollera checkboxar
Sen hämtar du dem med Request.Form("chkBoxNamn") och får då en kommaseparerad lista, antingen kan du hämta med hjälp av IN från din databas eller splitta dem till en array.
//Anna-KarinSv: Kontrollera checkboxar
När man använder PHP kan man ge ett "array-namn" till kontroller:
<input type="checkbox" name="ids[]" value="10">
<input type="checkbox" name="ids[]" value="11">
<input type="checkbox" name="ids[]" value="12">
Värdena för de ikryssade rutorna hamnar då i en array, t.ex. <b>$_POST['ids'] = array(10, 12)</b> om första och sista kryssrutan är ikryssad ovan. Dessa värden kan man sedan loopa över med foreach.
Går det inte att göra motsvarande i VBScript?
Sv: Kontrollera checkboxar
x= request.form("minaboxar") så innehåller den "1,3,5"
Sen kan du splitta den genom att skriva:
<code>
z = split(x,",")
for y=0 to ubound(z)-1
response.write "klickat på : " & z(y) & "<br>"
next
</code>Sv: Kontrollera checkboxar
Tack igenSv: Kontrollera checkboxar
Sv: Kontrollera checkboxar
hmmm... en sträng är ju faktiskt också en array...
<b>Dessa värden kan man sedan loopa över med foreach. Går det inte att göra motsvarande i VBScript?</b>
Visst går det.
Pelle m fl... att splitta strängen är onödigt. Det går faktiskt även i VBScript att skriva:
<code>
<%
For Each cbValue In Request.Form("myCheckbox")
Response.Write( cbValue & "<br/>")
Next
%>
</code>