04. juli 2001 - 21:23Der er
11 kommentarer og 1 løsning
Hjælp med irriterende Loop!
Hejsa!.. Jeg har et irriterende simpelt problem, som jeg nu alligevel har kæmpet med i flere timer!.. Jeg har et loop, som skal checke, om min bruger allerede er tilmeldt en given kategori. Hvis denne bruger ER tilmeldt, så skal den lave flueben i checkbox\'en.. Hvis ikke, så skal der ikke være flueben!.. Her er koden:
tear_up_group = split(memRS(\"Costumer_shared_groups\"),\",\") do while not pri_rs.eof for each group in tear_up_group if group = cstr(pri_rs(\"Prioritet_ID\")) then check = \"checked\" else check = \"\" end if next Response.Write \"<input type=checkbox \" & check & \" name=the_groups value=\'\" & pri_rs(\"Prioritet_id\") & \"\'>Gruppe: \" & Pri_rs(\"Prioritet_description\") & \"<br>\"&vbcrlf &vbcrlf Pri_rs.MoveNext loop
Der er pt. 3 \"groups\" in tear_up_group. Problemet er, at denne udgave \"Checker\" alle checkboxe.. Og jeg kan godt forstå hvorfor den fejler, men jeg kan sgu\' ikke lige udtænke en anden måde at opsætte dette loop på, så jeg er MEGET åben over for forslag!..
do while not pri_rs.eof for i = 0 to Ubound(arrTear_up_group) if arrTear_up_group(i) = cstr(pri_rs(\"Prioritet_ID\")) then check = \"checked\" else check = \"\" end if next
kan du bruge det? hvis ikke - så prøv: for i = 0 to Ubound(arrTear_up_group) response.write arrTear_up_group(i) response.write cstr(pri_rs(\"Prioritet_ID\")) if arrTear_up_group(i) = cstr(pri_rs(\"Prioritet_ID\")) then check = \"checked\" else check = \"\" end if next
Ja, så er jeg tilbage igen, og har kigget igennem jeres forslag!.. Der er desværre ikke nogen af dem, der virker!.. Den laver fuldstændigt det samme som før. Hvis jeg bytter lidt rundt på loopet, så bliver første checkbox \"checked\", men ikke resten. Variablerne bliver udskrevet rigtigt.
Det er sgu\' lige til at blive syg over, at jeg ikke kan løse så simpelt et problem, når man har gjort det 100 gange før!.. :)
Jeg håber, at i har nogle andre forslag, da jeg så småt er ved at begynde, at overveje at finde en høj bro, som jeg kan hoppe fra!.. :-)
Problemet er, at loopet når at sætte Check = \"\" før jeg får udskrevet input-boxen!.. Dvs, at uanset hvad jeg laver, så vil Check altid være = \"\".. Jeg kunne jo selvfølgelig vælge at sætte input-boxen ind i for..Next loopet, men så vil den udskrive denne inbox alt for mange gange, fordi den samtidigt er inde i en do..while løkke!..
tear_up_group = split(memRS(\"Costumer_shared_groups\"),\",\") do while not pri_rs.eof for each group in tear_up_group if group = cstr(pri_rs(\"Prioritet_ID\")) then check = \"checked\" exit for else check = \"\" end if next Response.Write \"<input type=checkbox \" & check & \" name=the_groups value=\'\" & pri_rs(\"Prioritet_id\") & \"\'>Gruppe: \" & Pri_rs(\"Prioritet_description\") & \"<br>\"&vbcrlf &vbcrlf Pri_rs.MoveNext loop
exit for bryder ud af for løkken - lige efter den har sat en checkbox til checked - så får du i hvert fald ikke probs med at den tester på andre værdier senere - og dermed igen sætter check=\"\"
men det er lidt svært - når man ikke ved hvad dine variable indeholder - fx hvilke data der har betydning for om den skal sætte den til checked - og hvordan det relaterer til recordsettet - for det kan være dine løkker skal konstrueres anderledes - overordnet set...
Problemet løste sig selv: Jeg droppede at idéen med at checke de boxe. :)
Jeg giver pointene til Nuno, som var tættest på med et svar!
Mange tak for hjælpen til jer begge to!.. :)
Thomas.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.