10. juni 2004 - 20:20Der er
18 kommentarer og 1 løsning
dropdown menu hvor linket ikke virker
jeg har en dropd.menu med følgende funktion: <script language="JavaScript"> function jumpMenu(targ,selObj,restore){ eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'"); if (restore) selObj.selectedIndex=0;} </script> og så denne på siden <select name="select" onChange="jumpMenu('parent',this,0)" style="color:#0066ff;background-color:#cccccc"><option selected>Tilbud</option> <option value="fact.php?indhold=tea">xxxx</option></select> men linket virker slet ikke. Er det fordi det første ligger i en included fil og selve menuen ligger i en anden included fil?
jeg kan umiddelbart godt få det til at virke (ud over at jeg brugte self i stedet for parent, men jeg regner med du har nogle frames at lege med). Umiddelbart skulle det heller ikke give nogen problemmer at de lå i hver deres fil hvis du includer dem med et serverside sprog - så vil selve browseren jo alligevel tolke siden i en helhed og ikke som mange små filer.
<script typee="text/javascript"> function jumpMenu(targ,selObj,restore){ /*targ.location.href=selObj.options[selObj.selectedIndex].value; //-- er nødvendigt til ældre browsere*/ targ.location.href=selObj.value; if (restore) selObj.selectedIndex=0; } </script>
sig mig har du overhovedet lagt din jumpMenu funktion i på siden - jeg kan absolut ikke se nogle steder hvor den er defineret. Du kan vel ikke have glemt at inkludere den ;-)
<META NAME="DC.Description" CONTENT="sofiegades gamle badeanstalt genåbnet af foreningen christianshavns agenda 21, bade & sundhedshus.Den smukke bygning fra 1909 skal restaureres og indrettes ud fra økologiske principper og metoder. "><script typee="text/javascript"> function jumpMenu(targ,selObj,restore){ /*targ.location.href=selObj.options[selObj.selectedIndex].value; //-- er nødvendigt til ældre browsere*/ targ.location.href=selObj.value; if (restore) selObj.selectedIndex=0; } </script>
Bemærk to fejl:
"> fra meta-tagget står efter et linjeskift (de fleste browsere og html-definitionen acceptere det !-)
Men det er en principiel fejl, at du giver dine selects det samme navn, hvis du ikke skal bruge det til noget i et array ...
Men det fungerer jo fint i den select, du har ændret, de andre melder en fejl, men når din menu er så simpel, kan du jo ligesågodt bruge det samme princip alle steder !-)
Ja, ja, det er også kun tåbeligt at bruge samme navn, ikke en fejl !-)
Det svarer til at det heller ikke er en fejl at 3 i en skoleklasse hedder Camilla, men det er altså hensigtsmæssigt, at de vænner sig til at reagere på 'Camilla N', 'Camilla S' og 'Camilla T' ...
Havde vi snakket om id'er var det en fejl, som kunne betyde noget, med names vil det bare betyde, at skal du gøre noget med dem, må du benytte select[0] osv...
Nu har jeg ændret det. Og er ganske godt tilfreds selvom det måske virker lidt gammeldags og stift i det sammenlignet med med de drop down der reagere blot ved mouse over og så folder sig ud. Du må endelig lægge et svar og også tak til Skovenborg.
Skal du gøre det anderledes skal du nok finde en metode til at skifte selektivt, så kun noget af siden skifter, jeg ville selv tænke i, om en løsning med noget (i)frame-etellerandet kunne bruges !-)
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.