det är väl bara att köra en request på checkboxarna, är dem ikryssade får du med ett värde är dem inte ikryssade kommer inget värde med...
------------------
/Andreas
8 svar · 191 visningar · startad av icaaq
Jag har en sida där jag har 4 st checkboxar. men hur får jag reda på om någon av dem är i kryssade och hur får jag värdet av dem, när dem är ikryssade
jag skall lägga värdet i en enkel txt fil, men hur man gör det har jag förstått ....tror jag
------------------
icaaq
---i suck ---
det är väl bara att köra en request på checkboxarna, är dem ikryssade får du med ett värde är dem inte ikryssade kommer inget värde med...
------------------
/Andreas
ok......... :q
kommer att lära mig detta till slut hoppas jag
------------------
icaaq
---i suck ---
Det går väl att döpa checkboxen och ge den ett värde:
<input type="checkbox" name="boxen" value="X">
Sedan frågar man efter det på mottagarsidan:
If Request("boxen") ="X" Then
'Vad som skall hända
End If
------------------
"Kan man inte säga vad man menar, tvingas man mena det man kan säga."
sida1.asp
<form action="sida2.asp" method="post">
<input type="checkbox" name="box" value="ett">
</form>
sida2.asp
<%
box = Request.Form("box")
Response.Write "Box= " & box
%>
Är kryssrutan ikryssad så skrivs ett ut.
Är kryssrutan inte ikryssad så skriv inget ut.
------------------
/Andreas
jag har fått till det när jag har ett värde.men nu vill jag på enklaste sätt få till det med flera värden.
Alltså om jag går på anno`s exempel så skulle jag vilja att jag fick
Box= ett, två, tre
om jag nu "checkat" ett två och tre boxarna.
hoppas ni förstår vad jag menar
------------------
icaaq
---i suck ---
Hello,
om de har samma namn så får du fram alla i checkade boxar så här:
For Each objItem in Request.Form("checkbox")
box = box & ", " & Request.Form(objItem)
Next
Response.Write "Markerade boxar: " & box
om de inte har samma namn lägg till ett gemensamt prefix på alla de checkboxar som hör till samma grupp, tex: box_minbox1, box_minbox2
Då får du fram det på detta sätt:
For Each objItem in Request.Form
If Left(objItem,3) = "box" Then
box = box & ", " & Request.Form(objItem)
End If
Next
Response.Write "Markerade boxar: " & box
cya
------------------
'*********************
Response.Write("PatrikB")
Response.End
'*********************
[Redigerat av PatrikB den 10 jan 2001]
Om det har samma namn så kommer svaret automatiskt att bli box = 1, 2, 3, 4
Det behöver man inte skriva några kodrader för att få fram.
Däremot om man vill köra något på varje value så använder man For Each
------------------
MVH // Cyprys
Cyprys bakgård
Politik är som en kvinna. Man lägger ena benet åt vänster, det andra benet till höger och koncentrerar sig på centerpartiet.
Access
En klar miss i ditt arbete är själva textfilen. Du borde sikta in dig på en databas, till exempel Access. Man kan tycka vad man vill om Microsoft och Access men det är ett bra ställe att börja på.
Faktum är, och detta är viktigt, du behöver inte kunna Access för att använda det över webben. Den tabben gick jag på så det vore dumt om du gjorde det med...
Hur man än vänder på det så är det där med textfiler ingen bra lösning. Du vill skapa / ta bort och redigera poster i en databas. Sikta in dig på det så blir livet enklare...
---
För att mer konkret svara på din fråga, testa detta:
Gör en sida med ett formulär som länkar till sig själv.
<%
' ## Kollar true/false
IF request("box1") = "TRUE" THEN myTMP1 = " CHECKED"
IF request("box2") = "TRUE" THEN myTMP2 = " CHECKED"
%>
<form action="index.asp" method="post">
<input type="checkbox" name="box1" value="TRUE"<% response.write myTMP1 %>>
<input type="checkbox" name="box2" value="TRUE"<% response.write myTMP2 %>>
</form>
---
Kanske inte direkt den snyggaste lösningen. Men det fungerar iallafall, testa och kolla! Kanske får du dina tankar åt rätt håll. Du vill faktiskt inte att värdet på boxarna ska vara ett två eller tre. Värdet ska vara SANT eller FALSKT och namnet på boxarna ska vara ett två och tre.
------------------
Life is a bitch... and then you marry one.