Avatar billede per1291 Nybegynder
23. juni 2005 - 12:51 Der 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:

self.location.href="svarside.htm?0"
window.location.replace("svarside.htm?0")

(NB: Forskellen på de to funktioner er ligegyldig i denne sammenhæng. Men Safari reagerer ikke på nogen af dem! - hvilket mine egne browsere gør.)

Hilsen  Per
Avatar billede steent Nybegynder
23. juni 2005 - 13:01 #1
Hvad document.location.href = 'svarside.htm?0'
Avatar billede olebole Juniormester
23. juni 2005 - 13:05 #2
<ole>

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'

/mvh
</bole>
Avatar billede per1291 Nybegynder
23. juni 2005 - 13:17 #3
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.)

Hilsen  Per
Avatar billede olebole Juniormester
23. juni 2005 - 13:31 #4
Det er ikke spørgsmålstegnet, men det, der kommer efter -> 'query-strengen', der måske skaber rod.

Hvad er dit problem? Er det scriptet på den ene side - eller den anden - der skaber problemer?
Avatar billede erikjacobsen Ekspert
23. juni 2005 - 13:36 #5
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.
Avatar billede per1291 Nybegynder
23. juni 2005 - 13:40 #6
Hej ole - vores kommentarer krydsede hinanden. Jeg vil afprøve dit forslag.

Hilsen  Per
Avatar billede per1291 Nybegynder
24. juni 2005 - 12:43 #7
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.

Hilsen  Per
Avatar billede erikjacobsen Ekspert
24. juni 2005 - 12:56 #8
Helt i orden med mig ;) Men det kunne nu have været sjovt at finde ud af hvad problemet egentlig var.
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