Avatar billede pcgamez.dk Nybegynder
04. oktober 2001 - 19:10 Der er 23 kommentarer og
1 løsning

checkbokse... SVÆR!

Jeg skal bruge en side, lige meget hvad sprog, hvor der er f.eks. 5 chekbokse og selvfølgelig en sumbit knap.
Hvis man vælger at afkrydse checkboks nr. 1, 2 og 5 skal man komme til én bestemt side.. Hvis man vælger at afkrydse checkboks 1, 2 og 3 kommer man til en anden side osv... Jeg har INGEN anelse om hvordan jeg skal lave det, så hvis der er nogen der vil hjælpe kunne det være fedt! (hvis i overhovedet forstår hvad jeg skriver :o) )
Avatar billede mukke Nybegynder
04. oktober 2001 - 19:24 #1
navngiv checkboksene a,b,c,d og e.

pseudo kode (kan også betragtes som et sprog ;-)

side = 0;
hvis a er krydset af forøg side med 1
hvis b er krydset af forøg side med 2
hvis c er krydset af forøg side med 4
hvis d er krydset af forøg side med 8
hvis e er krydset af forøg side med 16

returner siden med nummere \"side\"

Avatar billede shjorth Nybegynder
04. oktober 2001 - 19:29 #2
<php>

if($a && $a && $c && $d && $e) {
print(\"Alle checkboxe var afkrydset\");
}

eks... du kunne jo også smide det i..en while.

Avatar billede zeptic Nybegynder
04. oktober 2001 - 19:55 #3
Du skal henvise til 2^5 = 32 sider, for at have alle kombinationer med -- det er da noget af en opgave. Held og lykke!

Mukke\'s løsning er nok umiddelbart den bedste måde at gøre det på. Spørgsmålet er bare, om det skal gøres hos klienten eller på serveren (mao. skal der bruges javascript, eller ASP, PHP, JSP, el.lign.). Jeg ville nok selv gøre det med javascript, hvor der gøres fligtig brug af tabeller.

Avatar billede pcgamez.dk Nybegynder
04. oktober 2001 - 19:56 #4
Okay, jeg skal lige noget, så jeg tester det når jeg kommer hjem igen....

Mukke>> Forstår sq ikke helt din!

websources>> Hejsa :o)
Avatar billede shjorth Nybegynder
04. oktober 2001 - 19:58 #5
Smid det i et array, og brug 10 linjers kode til at parse det hele...

Jeg kender ikke JS, såee jeg ved ikke om det kan gøres lettere end 10 linjer
Avatar billede shjorth Nybegynder
04. oktober 2001 - 19:59 #6
lol hej!

så jeg ikke hehehe
Avatar billede shjorth Nybegynder
04. oktober 2001 - 20:08 #7
Eller simpelthen gøre det alllller mest simpelt!

if($a) { include(\"a.html\"); }
if($b) { include(\"b...........
Avatar billede coderdk Praktikant
04. oktober 2001 - 20:30 #8
Avatar billede mukke Nybegynder
04. oktober 2001 - 20:41 #9
Altid dejligt at se sin ide brugt. ;-)
Avatar billede coderdk Praktikant
04. oktober 2001 - 20:49 #10
mukke> hehe yeah det er da en logisk måde - jeg forøger dog ikke, jeg laver OR ;) men det er vel egentligt det samme i dette tilfælde ;)
Avatar billede mukke Nybegynder
04. oktober 2001 - 21:05 #11
Yup... du laver en bitvis or operation der netop virker fordi værdier er baseret på at beslaglægge netop een bit hver.

Hvad er egentlig grunden til du siger or istedet for +? Det ville aldrig være faldet mig ind, og jeg ved faktisk ikke hvad der er mest optimal.
Avatar billede coderdk Praktikant
04. oktober 2001 - 21:09 #12
Jeg bruger OR fordi det er det man bruger i C/C++ og Delphi - når man skal checke om et flag er sat bruger man AND altså checkbox 4 er sat hvis sidenr & 8 er sand :) Det er lettest og hurtigst at arbejde med AND og OR :)
Avatar billede codebase Praktikant
05. oktober 2001 - 14:16 #13
--> mukke jeg har et lille problem med det sidste forslag du kom med, i spg.
http://www.eksperten.dk/spm/116759?id=116759
Avatar billede shjorth Nybegynder
05. oktober 2001 - 14:46 #14
codebase --> Det hører vist ikke hjemme i dette spm vel!
Avatar billede jakoba Nybegynder
08. oktober 2001 - 19:30 #15
<script language=\'javascript\'> <!--

var dests = new Array(
  \"dest00.html\", \"dest01.html\", \"dest02.html\", \"dest03.html\",
  \"dest04.html\", \"dest05.html\", \"dest06.html\", \"dest07.html\",
  \"dest08.html\", \"dest09.html\", \"dest10.html\", \"dest11.html\",
  \"dest12.html\", \"dest13.html\", \"dest14.html\", \"dest15.html\",
  \"dest16.html\", \"dest17.html\", \"dest18.html\", \"dest19.html\",
  \"dest20.html\", \"dest21.html\", \"dest22.html\", \"dest23.html\",
  \"dest24.html\", \"dest25.html\", \"dest26.html\", \"dest27.html\",
  \"dest28.html\", \"dest29.html\", \"dest30.html\", \"dest31.html\"
                          );

function vaelgDestination( frm ) {
    var selector = 0;
    for (var i=0; frm.elements.length>i; i++ ) {
        if (  frm.elements[i].type == \'checkbox\'
            && frm.elements[i].name.length == 1 ) {
            selector *= 2;
            if ( frm.elements[i].selected ) selector += 1;
        }
    if ( selector > dests.length ) {
        // kodefejl!  Du må sørge for at det ikke er mere
        // end 5 checkbokse med navne der er eet bogstav lange.
        return false;
    }
    frm.action = dests[selector];
    return true;
};

// --> </script>

og lav en onsubmit i din form:

<form ... onsubmit=\"return vaelgDestination( this )\">

mvh JakobA
Avatar billede jakoba Nybegynder
08. oktober 2001 - 19:39 #16
Ups.  der mangler en } foran nummer 2 if-sætning.
        }
    if ( selector > dests.length ) {
skal være
        }
    }
    if ( selector > dests.length ) {
Avatar billede mukke Nybegynder
08. oktober 2001 - 19:53 #17
Må man tillade sig at spørge hvorfor du svarer på dette spørgsmål som codebase allerede har givet et fyldestgørende svar på?
Avatar billede jakoba Nybegynder
08. oktober 2001 - 23:33 #18
Du mener vel mukke ikke? eller coderdk?

men mestendels enig, 4 dage er lovlig lidt til at sige \'klar bane for nye forsøg\'

pcgamez.dk >> ignorer mit svar.

mvh JakobA
Avatar billede pcgamez.dk Nybegynder
20. oktober 2001 - 18:32 #19
lukket...
Avatar billede shjorth Nybegynder
20. oktober 2001 - 18:34 #20
*høster højlydt*

de der points!! Tilhører de ikke nogle andre???
Avatar billede shjorth Nybegynder
20. oktober 2001 - 18:36 #21
hoster even!!
Avatar billede jakoba Nybegynder
20. oktober 2001 - 18:37 #22
Hmm...
PcGamez.dk >> har du en forklaring (helst god)
Avatar billede coderdk Praktikant
20. oktober 2001 - 20:01 #23
Ahem!
Avatar billede mukke Nybegynder
21. oktober 2001 - 18:53 #24
hmmmm
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester