23. juni 2005 - 12:51Der er
7 kommentarer og 1 løsning
Viderestilling i Safari
Efter at have fået løst mit problem med Radioknapper i Safari har jeg nu problemer med viderestilling i Safari.
Et klik på en knap ved navn "Evaluering" skulle gerne gøre, at hvis alle spørgsmål er korrekt udfyldt, så kommer der en ny side frem med resultatet. Jeg har prøvet 2 versioner:
Nej, document.location har været deprecated i mange år, efterhånden. Hvis noget, så: window.location.href = 'svarside.htm?0'
- men jeg tror nu, der er tale om et andet problem. Det eneste, jeg kan komme i tanker om, er, at Safari er så begavet, at den kan se, din query-streng ikke giver mening. En query-streng skal være opbygget af variabel/værdi par - og ydermere kan en variabels navn ikke begynde med et tal. Prøv i stedet med 'svarside.htm?noget=0'
document.location.href - måske. Jeg har ikke nogen klar opfattelse af forskellen.
Men jeg tror faktisk at problemet hænger sammen med spørgsmålstegnet. (Det som står efter spørgsmålstegnet, "pakkes ud" af siden svarside.htm og bruges til at definere indholdet.)
Det tror jeg ikke Ole. Det der kommer efter ?-et er i frit format, dog URL-encoded om nødvendigt, og ingen browser, end ikke Safari vil (bør?) kigge på det. Så blot en anbefaling om at lede efter zebraen et andet sted.
Jeg har fulgt oles forslag om at ændre til ?svar=0. Det gjorde ingen forskel, men i grunden er det jo en pæn selvdokumenterende måde, så jeg lader den være.
Min Mac-bekendt har meddelt, at et klik på Evaluer-knappen blot medfører, at man bliver stående på den samme side, men at adresselinjen nu angiver sidens navn efterfulgt af "?r0=on" - idet jeg har et par radioknapper med navnet r0.
Dette lignede noget, jeg også har oplevet i Opera. Og ganske rigtigt: Viderestillingen giver samme magre resultat i Opera! (Jeg syntes ellers, jeg havde tjekket det...)
Opera og Safari kan normalt godt udføre en self.location.href="...", men der er åbenbart problemer når adressen afsluttes med en querystring.
However, dette har fået mig til at ændre funktionen, sådan at der nu i stedet for en viderestilling åbnes et nyt vindue ovenpå det gamle. Det virker i Opera. Og jeg er sikker på, at det også virker i Safari. Jeg betragter derfor problemet som løst.
Tak for jeres forsøg. erikjacobsen havde mest ret, men jeg vil tillade mig at give mig selv pointene.
Helt i orden med mig ;) Men det kunne nu have været sjovt at finde ud af hvad problemet egentlig var.
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.