Avatar billede jonas_j Nybegynder
15. marts 2005 - 11:06 Der er 10 kommentarer og
1 løsning

Select sætning der bestemmer en anden select sætningsværdier?

Hej Gutter,

Jeg skal have lavet 2 select-sætninger, hvor den ene skal bestemme indholdet af den anden. F.eks. når jeg vælger en model på en sko, skal der komme en ny select frem med de størrelser sko'en kan fås i? Jeg har allerede i koden lavet en start <form> og slut <form>. Så jeg skal udenom problemet uden at lave en form mere, for jeg har rigtige dårlige erfaringer med en form i en form. Jeg har før lavet noget integreret java til noget lignende. Men det kode har jeg desværre ikke mere :(

Hvis nogle er friske på en lille udfordring så bare skriv :)

Mvh
Jonas Jensen
Avatar billede bromer Nybegynder
15. marts 2005 - 11:10 #1
Det jeg normalt gør er at hente alle kombinationer ud og sætte deres visibility til hidden. Når brugeren så vælger noget i den første select ændrer jeg på visibility på den passende anden select, hvis du forstår.
Avatar billede jonas_j Nybegynder
15. marts 2005 - 11:28 #2
Ja det lyder meget fornuftigt, har du evt. noget kode, for jeg har aldrig arbejdet i visibility og non-visibility :)
Avatar billede bromer Nybegynder
15. marts 2005 - 11:31 #3
Det er meget simpelt, egentligt. Hvis du laver et div for hvor select som:

<div style='display: none;' id='inc_select_1'>
<select>

</select>
</div>

Hvor du husker at sætte id'et for div'en til noget du kan genkende, så kan du jo vise den ved noget java script:

<script type='text/javascript'>
document.getElementById('inc_select_1').style.display = 'block';
</scirpt>
Avatar billede jonas_j Nybegynder
15. marts 2005 - 11:39 #4
hmm.. ikke helt forstået, jeg er lidt nybegynder, så hvis du evt. kan udspecificere det og så vil jeg gerne lave det i php :)
Avatar billede bromer Nybegynder
15. marts 2005 - 11:44 #5
Du skal lige først have styr på, hvilke sprog man gør tingene i. For det første skal ud hente data og printe javascript-kode og select-bokse i php. Den javascript kode din php-kode så genererer skal så sørge for at vise/skjule select-bokse. Var det mere forståeligt?
Avatar billede jonas_j Nybegynder
15. marts 2005 - 11:46 #6
Ja sprogene er jeg med på. Men det er bare det med <div boksene> har nemlig aldrig arbejdet med div boxe. Jeg arbejder i tabeller istedet :)
Avatar billede bromer Nybegynder
15. marts 2005 - 11:50 #7
I det her tilfælde er det jo bare en boks. Du kan også lave det med tabel-rækker, der skal du bare sætte deres dispaly til td-row eller noget i den stil istedet for block.
Avatar billede jonas_j Nybegynder
15. marts 2005 - 11:55 #8
Det jeg gerne vil er at når jeg selecter nogen i den ene select, så henter php noget data fra mysql og indsætter i en ny select.

Min kode ser sådan ud:

# Sko: #
print start_form("phpmain", $_SERVER[PHP_SELF], "POST", "sko");
   
if($user->bluse == 'ja') {
  print table_row(
    table_cell('Sko:')
      ,table_cell(make_dropdown_valg(sko2005, sko2005, $sko[$user->id][valg], 1,
      TRUE). " sko type ".make_user_tojstorrelser_dropdown(user_tojstorrelser,
      $user_tojstorrelser, $dropdown_valg_id))
    );
  }

print end_form();
Avatar billede bromer Nybegynder
15. marts 2005 - 12:03 #9
Nu giver din kode jo ikke megen mening uden at man kender den klasse du benytter til at lave formularer med. Men her har du også valgt den løsning som jeg ikke beskrev, nemlig hvor du først submitter en form for derefter at hente de væredier som passer til hvad man skrev i den første select.

Det forslag jeg kom med hentede jo alle select-bokse ud og vise så en med javascript når man havde valgt noget i den første.
Avatar billede jonas_j Nybegynder
15. marts 2005 - 14:36 #10
Kan du lave et komplet kodescript på det, så får du lige point.. :)

Hilsen Jonas
Avatar billede bromer Nybegynder
15. marts 2005 - 14:56 #11
Synes egentlig hellere du skulle lave det selv og så lære af den tid det nu engang tager.
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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