26. juni 2004 - 02:08Der er
17 kommentarer og 1 løsning
Radiobuttons og AS. If "radio3" then, if not, then
Er nybegynder indenfor Actions Script og har kæmpet med nedenstående AS. Nu fungerer det fint og sender de indtastede data over i min access database via asp.
Men!
Udover de seks inputText felter har jeg tre stk. radiobuttons. Jeg vil gerne have det således, at de indtastede data i inputText KUN bliver smidt over i access såfremt radiobutton nr. 3 er valgt (radio3). Dvs. at hvis radiobutton 1 eller 2 er valgt (eller ingen er valgt), så bliver data’ene ikke smidt over. Skal der ikke bare tilføjes noget ala ”if radiobutton 3 true: then (mit script) and go to frame X and stop, if else: go to frame X and stop…” ?
Nogen der har et bud på de linjer der skal tilføjes mit AS? Jeg kan ikke hitte ud af det... :-/
Har forsøgt dette (se nedenfor), men efter et tryk på knappen (dvs. submit.onRelease funktionen), så kommer man til frame 3 uanset om radio3 er valgt eller ej...
Hmmmm... Altså det er først når der bliver trykket på submit knappen at der skal laves et tjek af hvorvidt radiobutton 1, 2 eller 3 er valgt. Hvis radio3 er valgt så skal de indtastede data sendes til access. Hvis ikke radio3 er valgt, så skal data'ene ikke sendes. Hvordan gør man det? Jeg kan ikke få det til at virke med
if(myRadioButton.getEnabled()){ gør noget; }else{ gør noget andet }
Jeg har en fornemmelse af at det - i forhold til mit script (se indlæg øverst) - ikke er denne løsning jeg skal anvende, men nærmere en løsning hvor radio-haljøsaet er indeholdt i submit funktionen.
Efter min naive logik burde følgende virke (se nedenfor). Men det gør det ikke. Jeg ender stadig på frame 3 hver gang selvom radio3 er valgt. Er der virkelig ingen der ved hvordan det kan fikses eller hvad der er galt med scriptet?
Hvis du i stedet for "getEnabled()" bruger "enabled", vil den returnere false hvis den er valgt, og true hvis den KAN vælges (men ikke er valgt lige nu):
.... && radio3.enabled == false)
Din getEnables() returnerer altid true, hvorfor det går galt.
Hvis jeg indsætter ...&& radio3.enabled==false), så sker det samme (dvs. den går stadig til frame 3 HVER gang uanset om radioknappen er valgt eller ej), men hvis jeg indsætter ... && radio3.enabled==true) ja, så sker der noget... men nu går den tilgengæld til frame 2 HVER gang... (dvs. igen uanset om man har valgt radio3 eller ej). Meget meget mærkeligt!
De tre radiobuttons er som udgangspunkt valgt til at være false (dvs. uden et dot inde i). Bør jeg have noget script på selve radio3 knappen som siger at hvis den er valgt så er den true og hvis ikke så er den false...? Kan man det? Eller er det måske heller ikke nogen løsning? Gruble gruble...
radio3 er det instance name som jeg har givet til den tredje af 3 stk radiobuttons som er instance of Radiobutton (med groupname radioGroup). De to andre radiobuttons har jeg givet navnet radio1 og radio2
Ok. Det viker! Dvs. at nu sender den KUN data'ene over i access såfremt radio3 er valgt. Er den ikke valgt - eller er radio1 eller radio2 valgt, ja så sender den ingen data. Og det er kanon!! Det var jo egentlig det jeg ville have den til.
Et mindre problem er så at den stadig ender på frame 2 unset om radio3 er valgt eller ej... og det synes jeg er lidt mærkeligt. Hvis - og kun hvis - du let kan gennemskue hvorfor, så må du gerne fortælle det. Du får uanset hvad de 30 points ;-)
Supersejt. Håber du får styr på if else, ellers spørg bare løs :o)
Synes godt om
Ny brugerNybegynder
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.