18. juli 2005 - 20:43Der er
16 kommentarer og 2 løsninger
Simpelt script virker i IE men ikke i firefox
Jeg har en dropdown boks - med et javascript som sender sender brugeren videre til en anden siden - med værdien fra dropdown boksen. Det virker fint i IE - men ikke i mozilla firefox - er der nogen der kan rette det til så det virker i begge browsere ?
istedet for prodid.value kunne du også skrive this.value. Her henviser this direkte til din select-boks.
Den forrige metode er noget IE-snask, som ikke har noget holdpunkt i den officiele standard, og derfor har Mozilla eller andre browsere heller ikke nogen egentlig grund til at understøtte det.
sukos - hvis vi tager udgangspunkt i din - hvordan får jeg så smidt værdien af dropdownen med - hvis den skal sendes som GET ?
Det virker i princippet - men jeg er nød til at ændre det til metode="POST" for at få mine andre værdier med over ??? -
Det vil sige hvis jeg skal have den som : <form action="index.php?id=3" method="POST"> for at den sender værdien id med.... - og så sender den ikke værdien for prodid med - det fatter jeg ikke helt ??
hvis man skal følge standarden fra w3c, så er action krævet i et form-element, mens method (så vidt jeg kan læse mig frem til) er som standard get. Noget andet er selvfølgelig at browserne typisk er ligeglade om en selectbox er inde i en form eller ej, men det betyder ikke, at man bør udelade den.
Med al respekt: At kontrol-elementer kun bør anvendes indenfor et form-element, er noget højglanspolleret vrøvl. At bruge kontroller udenfor et form-element har _intet_ med skodkode at gøre :)
"The elements used to create controls generally appear inside a FORM element, but may also appear outside of a FORM element declaration when they are used to build user interfaces. This is discussed in the section on intrinsic events. Note that controls outside a form cannot be successful controls.":
- det er fuldstændig legalt at bruge input-, select-, button- og alle mulige andre kontrol-elementer uden at bruge forms, når man bruger dem til at bygge bruger interfaces, der f.eks. grænser op til en JS-applikation :)
skovenborg >> Hvis du leder tilbage i E's DB, kan du også finde spm, hvor jeg fægter for, at den slags elementer _absolut_ kun hører hjemme i en form. Vi bliver hele tiden klogere ;o)
sako >> Det var din adressering af elementet, den var galt med. Du kunne også have brugt:
- men det er noget mere 'sexy' at referere med this ;o)
Derudover skriver man aldrig 'java script:' i en event-handler. Det bruges stort set kun i et links href - og der afvikler man kun JS, hvis man er absolut tvunget til det.
- selvtak ... jeg vil dog gerne dele med skovenborg, der jo faktisk gav dig løsningen først i (18/07-2005 20:59:12) - men blev bragt lidt i tvivl, om det var legalt udenfor en form, omend han var klar over, browserne er ligeglade :)
okay, og tak for den ekstra info omkring form-elementet. Det var nu rart at få at vide. At browserne er ligeglade plejer ellers ikke at betyde, at det er en korrekt måde at skrive på, men på dette punkt er det nu meget rigtigt...
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.