[JS] IE4+5: Doorsturen naar een ander pagina

Pagina: 1
Acties:

  • flipm0
  • Registratie: September 2000
  • Laatst online: 14-11-2025
Ik probeer met javascript een gebruiker na het doen van een bepaalde invoer door te sturen naar een andere pagina door middel van de volgende code:

code:
1
2
3
4
5
if (tekst=prompt('Voer de tekst in','')) {
      document.location='blaat.php?tekst='+tekst;
} else {
      alert('Voer een tekst in!');
}


Dit werkt prima in IE5.5 en hoger en ook in NS4 en hoger (lagere versies van NS heb ik niet geprobeerd omdat ik die nou eenmaal niet bij de hand heb ;)), maar in lagere IE's werkt het niet. Ik krijg wel de javascript-prompt, maar na het invoeren van de tekst word ik niet doorgestuurd naar de volgende pagina. Als ik geen tekst invoer krijg ik wel de alert, dus het zit hem naar mijn mening in de tweede regel. Ik heb ook al .href d'r 8er, self. en this. d'r voor geprobeerd, maar het doet nix :/. Wat doe ik verkeerd?

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

window.location

  • flipm0
  • Registratie: September 2000
  • Laatst online: 14-11-2025
Dat had ik al geprobeerd (vergeten te typen) maar dat lost het probleem niet op

  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24

Hangloozz

{ @$%&# }

document.location.href='blaat.php?tekst='+tekst;

www.jurgroessen.nl


  • flipm0
  • Registratie: September 2000
  • Laatst online: 14-11-2025
Hangloozz schreef op 06 augustus 2002 @ 13:27:
document.location.href='blaat.php?tekst='+tekst;
Zelfde, dit had ik zelf ook al geprobeerd :/

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 11:01

RM-rf

1 2 3 4 5 7 6 8 9

code:
1
this.window.location = 'blaat.php?tekst='+escape(tekst);

misschien?

zal het nu even testen
code:
1
2
3
4
5
6
7
8
<script>
if (text=prompt('blah',''))
{
    this.window.location = 'test.html?'+escape(text)
} else {
    alert('nothing!')
}
</script>

werkt bij mij in msie5.0/PC
wat er gebeurde als ik voor de window.location een niet-bestaande paginanaam opgaf was dat hij direct een DNS-error gaf en je de naam niet in de locatie zag verschijnen

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • flipm0
  • Registratie: September 2000
  • Laatst online: 14-11-2025
RM-rf schreef op 06 augustus 2002 @ 15:15:
code:
1
this.window.location = 'blaat.php?tekst='+escape(tekst);

misschien?

zal het nu even testen
code:
1
2
3
4
5
6
7
8
<script>
if (text=prompt('blah',''))
{
    this.window.location = 'test.html?'+escape(text)
} else {
    alert('nothing!')
}
</script>

werkt bij mij in msie5.0/PC
wat er gebeurde als ik voor de window.location een niet-bestaande paginanaam opgaf was dat hij direct een DNS-error gaf en je de naam niet in de locatie zag verschijnen
Dat werkt idd, maar niet als ik het gebruik in een functie die ik aanroep vanuit mijn pagina. Weet je misschien ook waar dat aan kan liggen?

Verwijderd

Het werkt bij mij in IE5.01 wel

  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

flipm0 schreef op 06 augustus 2002 @ 15:41:
[...]

Dat werkt idd, maar niet als ik het gebruik in een functie die ik aanroep vanuit mijn pagina. Weet je misschien ook waar dat aan kan liggen?
En hoe ziet je functie + aanroep eruit? Is een beetje moeilijk gokken zo.

btw. is this.window niet een beetje dubbelop :?

Today's subliminal thought is:


  • flipm0
  • Registratie: September 2000
  • Laatst online: 14-11-2025
In z'n geheel moet het zoiets worden:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<html>

<head>
    <script language="javascript">
    <!--
        function test() {

            if (text=prompt('blah','')) {
                this.window.location = 'blaat.html?tekst='+escape(text)
            } else {
                alert('nothing!')
            }
        }
    -->
    </script>
</head>

<body>

<a href="#" onClick="javascript:test();">Klik hier</a>

</body>

</html>

  • flipm0
  • Registratie: September 2000
  • Laatst online: 14-11-2025
Niemand?

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

test is een gereserveerd keyword. kun je dus niet gebruiken.

verder is het gewoon window.location.href.

this.window is dubbel op. window.location is het location object, met de href als string property met de werkelijke url.

dat moet gewoon werken.

  • flipm0
  • Registratie: September 2000
  • Laatst online: 14-11-2025
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<html>

<head>
    <script language="javascript">
    <!--
        function mekker() {

            if (text=prompt('blah','')) {
                window.location.href = 'blaat.html?tekst='+escape(text)
            } else {
                alert('nothing!')
            }
        }
    -->
    </script>
</head>

<body>

<a href="#" onClick="javascript:mekker();">Klik hier</a>

</body>

</html>


Dit heb ik geprobeerd, maar hetzelfde probleem: Het werkt wel in IE5.5, IE6.0, NS4.74 en MZ1.0, maar niet in IE4 en IE5...

Zou iemand dit hele stukje code es in ze eigen browser (liefst IE5.0 of lager) kunnen proberen en het resultaat ff hier posten?

  • Hangloozz
  • Registratie: Juli 1999
  • Laatst online: 13-07 17:24

Hangloozz

{ @$%&# }

fik d'r eens een timer in, zoals dit:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<html>

<head>
    <script language="javascript">
    <!--
        function mekker() {

            if (text=prompt('blah','')) {
        
                setTimeout('window.location.href = "blaat.html?tekst="+escape(text)',1000);
            } else {
                alert('nothing!')
            }
        }
    -->
    </script>
</head>

<body>

<a href="javascript://" onClick="javascript:mekker();">Klik hier</a>

</body>

</html>

;)

www.jurgroessen.nl

Pagina: 1