Avatar billede dalbjerg Nybegynder
24. september 2002 - 16:24 Der er 5 kommentarer og
1 løsning

dropdown box indhold skal skift

Hejsa

Jeg vil gerne havde lavet således at jeg har en dropdown box eks:
<select name="eks1">
<option value="mad">Mad</option>
<option value="drikkevarer">Drikkevarer</option>
</select>

hvis så man vælger mad, skal en anden dropdown box være således:
<select name="eks2">
<option value="pomfrit">pomfrit</option>
<option value="bruger">burger</option>
<option value="bøf">bøf</option>
</select>

men hvis man vælge drikke varer skal den være:

<select name="eks2">
<option value="cola">cola</option>
<option value="appelsin">appelsin</option>
<option value="sportsvand">sportsvand</option>
</select>


Hvis eks1, så er tom, skal den der eks2 være
<select name="eks2">
<option value="">Vælg først noget i eks 1</option>

</select>


Jeg kender ikke en ski til js, og vil derfor gerne lige havde hjælp med dette...
Avatar billede jakoba Nybegynder
24. september 2002 - 16:30 #1
Avatar billede Jman Praktikant
24. september 2002 - 16:32 #2
søg på Autodropdown under "javascripts" i højre søgeboks på www.viewsource.dk
Avatar billede dalbjerg Nybegynder
24. september 2002 - 16:34 #3
jakoba, jeps.. lige præsis...
Avatar billede dalbjerg Nybegynder
24. september 2002 - 16:47 #4
jakoba, blot set fra den åbner et nyt vindue, nå man har valgt det sidste, hvor den åbner den cafe.. det skal mit ikke...
Avatar billede dalbjerg Nybegynder
24. september 2002 - 16:49 #5
løste det vist selv..
slettede :
      var helurl = "http://" + frm.madsted.options[frm.madsted.selectedIndex].value;
      window.open( helurl, 'winduesnavn' );
Avatar billede jakoba Nybegynder
24. september 2002 - 16:52 #6
<html>
<head><title>Select menu vælger sekundær select menu.</title>

<script language="JavaScript"> <!--

var selbokse = new Array();

selbokse['land'] =
    new Array ( "- vælg type -",    "mad", "drikkevare"    ), // første dropdown

    // forhvert valg i første dropdown skal der så være en værdi og et navn
selbokse['madsted'] =
    new Array(
        new Array (    // selbokse['madsted'][0]  hvis mad: anden dropdown
            "-1|- vælg mad -",
            "pomfrit|pomfrit",
            "burger|burger",
            "bøf|bøf"
                  ),
        new Array (    // selbokse['madsted'][1]  hvis drikkevare anden dropdown
            "-1|- vælg drikkevare -",
            "cola|cola",
            "appelsin|appelsin",
            "sportsvand|sportsvand"
                  )
            );

var offMenu = new Array( " \< - \< - \< - \< - \< -" ); // >

var sel;
var selo;

function setOption( idx, data ) {
  var tmp = data.split("|");
  if ( tmp.length == 1 ) { tmp[1]=tmp[0]; tmp[0]="" };
  if ( selo.length > idx ) {
      selo[idx].text = tmp[1];
      selo[idx].value = tmp[0];
  } else
      selo[idx] = new Option( tmp[1], tmp[0] );
}; //end setOption( number, string, string )

function setupMenu( selobj, menuarray ) {
//alert("menuarray type: " +typeof(menuarray) );
    sel  = selobj.selectedIndex;
    selo = selobj.options;
    for (var i=0; menuarray.length>i; i++ ) setOption( i, menuarray[i] );
    selobj.selectedIndex = 0;
    selobj.disabled = ( menuarray==offMenu )?true:false;
    selo.length = menuarray.length;
}; //end setupMenu( select object, array )

var idxLand = -1;  // intet land valgt

function setMenu ( frm, selNavn ) {
  if ( selNavn == "" ) {
      setupMenu( frm.land, selbokse['land'] );
      setupMenu( frm.madsted, offMenu );
      idxLand = -1;
  } else
  if ( selNavn == 'land' ) {
      idxLand = frm.land.selectedIndex-1;
      if ( idxLand >= 0 )
          setupMenu( frm.madsted, selbokse['madsted'][idxLand] );
      else
          setupMenu( frm.madsted, offMenu );
  } else
  if ( selNavn == 'madsted' && idxLand>=0 ) {
//jeg har fjernet  'hop til adresse i value, og skriver blot valget i en alert.
      alert( "du har valgt " + frm.madsted.options[frm.madsted.selectedIndex].value );
//      var helurl = "http://" + frm.madsted.options[frm.madsted.selectedIndex].value;
//      window.open( helurl, 'winduesnavn' );
  } else
      alert( "Slem programfejl. du bør aldrig se denne besked." );
}; //end setMenu ( radioKnap element )

// --> 

</script>
 
</head>
<body  onload="setMenu( document.sfrm, '' )">

<p><form name="sfrm" action="dest_fil.asp" onsubmit="return pakResultat(this);">
<center><table border=0 cellspacing=10>
  <tr>
    <td valign='top'>
        <select name="land" width="200px" style="width:200px"
          onchange="setMenu(this.form, this.name);">
          <option value=1>- - - - - - - - - - - -</option>
          <option value=2> </option>
          <option value=3> </option> <!-- indsæt toppe options af hensyn til NS4.x -->
          <option value=4> </option>
          <option value=5> </option>
          <option value=6> </option>
          <option value=7> </option>
          <option value=8> </option>
          <option value=9> </option>
          <option value=10> </option>
        </select>
    </td>
    <td valign='top'>
        <select name="madsted" width="200px" style="width:200px"
          onfocus="if (0>idxLand) this.blur();"
          onchange="if (this.selectedIndex>0) setMenu(this.form, this.name);">
          <option value=1>- - - - - - - - - - - -</option>
          <option value=2> </option>
          <option value=3> </option>
          <option value=4> </option>
          <option value=5> </option>
          <option value=6> </option>
          <option value=7> </option>
          <option value=8> </option>
          <option value=9> </option>
          <option value=10> </option>
        </select>
    </td>
  </tr>
</table></center>
</form>

<p align='right'><!-- WebWriter AutoDato -->Opdateret: 24.9.2002<!-- WW -->
</body>
</html>

mvh JakobA
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