Avatar billede heenet Novice
25. november 2004 - 14:29 Der er 7 kommentarer og
1 løsning

Virker i Explorer men ikke i firefox

Jeg har lavet noget asp, som genererer en formular, som jeg kalder sog. Hvis de rette omstændigheder er til stede submitter jeg formularen med et java script:

<script language="javascript" type="text/javascript">document.soeg.submit();</script>

Dette virker upåklageligt i Internet Explore, men i FireFox sker der intet. Der er intet på siden som gør, at sidens indhold ikke vises, hvis den førnævnte kode ikke eksekveres, men det bliver heller ikke vist. Der er bare hvid skærm. Kan det have noget med formularen at gøre, eller at den skrives i asp koden?:

<% response.Write("<form action='liste.asp' method='post' name='soeg'>")

for each item in request.Form
    response.Write("<input type='hidden' name='" & item & "' value='" & request.Form(item) & "'>")
next
response.Write("</form>") %>

Hvis der er andre input til lignede ting som virker i den ene browser men ikke den anden, så kom med dem ;)
Avatar billede heidi_j Nybegynder
25. november 2004 - 14:54 #1
Tror det er meget microsoft-i-seret... prøv evt. at rette name='soeg' til id='soeg' og document.soeg.submit(); til document.getElementById('soeg').submit();
Avatar billede olebole Juniormester
25. november 2004 - 15:20 #2
<ole>

Det var dog noget 'fordrukkent sludder'  :)
Det er helt efter bogen - og dette fungerer jo ganske udmærket i alle browsere:

<form action="http://www.google.dk" name="bla">
<input type="text">
</form>

<a href="#" onclick="document.bla.submit();return false">jkhkjhkhj</a>

... du må lave en eller anden fejl, du ikke beskriver her. Prøv at lægge et link til siden, ellers kan vi ikke se, hvad du gør galt.
/mvh
</bole>
Avatar billede heenet Novice
25. november 2004 - 20:28 #3
Her er koden i sammenhæng:

if request.Form("Finish") = "ok" then
    response.Write("<form action=liste.asp method=post name=soeg>")
for each item in request.Form
    response.Write("<input type=hidden name=" & item & " value=" & request.Form(item) & ">")
next
    response.Write("</form>")
%>
<script language="javascript" type="text/javascript">document.soeg.submit();</script>
<% Else

Jeg kører nogle reloads i formularen, og bruger ovenstående til at komme videre. Koden kan ses i brug på http://www.visitvestjylland.dk klik "booking".
Bemærk at jeg kun har lavet det i indholdsframen, og vil ikke have skylden for den javascript-fejl der opstår i top.php når der klikkes "booking" :-)

Siden opdaterer når kriterier ændres, og koden herover fyres af, når der klikkes på "Vis resultat", og jeg har netop tjekket igen: Det virker i IE men ikke i FireFox. Kan det have noget med blandingen af php og asp?
Avatar billede olebole Juniormester
25. november 2004 - 21:25 #4
Umiddelbart kan jeg ikke se fejlen. Det vil kræve, jeg sidder med koden selv.
Gør i øvrigt dine brugere en tjeneste ... dø den intro. Ingen har brug for den - og den bringer ikke handlingen videre, tværtimod  ;o)
Avatar billede heenet Novice
25. november 2004 - 22:35 #5
Jeg har kun lavet booking delen som hives ind i framen.. intro og menu har jeg ikke noget med at gøre, og resten har jeg ikke det mindste med at gøre, men jeg er helt enig, og tro mig jeg har set den intro flere gange end dig ;)
Avatar billede heenet Novice
26. november 2004 - 11:58 #6
Jeg havde først overset Heidi's kommentar, og har nu forsøgt hendes, men uden held.
Jeg er rimelig ny i FireFox, men har fundet Javascriot consolen, og fejlen har siger:
Error: document.soeg has no properties
Source File: java script: Error: document.soeg.submit();
Line: 1

eller

Error: document.getElementById("soeg") has no properties
Source File: http://www.tgv.tse.dk/Default.asp
Line: 2

Kan det oversættes til et for mig forståeligt dansk. Det skal siges at begge måder at gøre det på virker i IE
Avatar billede heenet Novice
11. december 2004 - 15:11 #7
Jeg fandt selv svaret på problemet. Da jeg ikke kunne få den til at automatisk at submit'te i FireFox, så satte jeg en submit knap på, som FireFox brugere kunne klikke sige videre med, og så virkede det pludselig. Det ser ud til at FireFox kræver synlige elementer på en side, for at udføre javascriptet. Ved ikkeom det giver mening, men det virker :-) Det skal være synlige mellemrum, linieskift, <input type=hidden.. og andre usynlige HTML objekter kan ikke få det til at virke.
Jeg har skiftet knappen ud med teksten "Siden Loader..." og det virker fedt :-)
Avatar billede olebole Juniormester
11. december 2004 - 19:58 #8
Jeg er ked af at sige det, men det passer stadig ikke. Du laver nogle fejl, du ikke fortæller om. Vil du have problemet løst, må du lægge en URL til siden  :)
Dette fungerer smukt i FF:

<form name="bla" action="http://www.google.dk" method="get"><input type="hidden" name="test" value="noget"></form>

<script type="text/JavaScript">
setTimeout("document.bla.submit()", 1000);
</script>
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