Toon posts:

innerHtml in ander window

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een klein probleempje,

Ik heb een html pagina gemaakt een een stukje javascript. In de body van het html document staat en knop en als je daarop drukt opent hij een nieuw scherm doormiddel van window.open

Wat ik wil is dat als je in het eerste scherm op een knop drukt dat hij op het 2de scherm in een div'je en tekst weergeeft die je hebt meegeven vanuit het 1ste scherm.

ik heb tot nu toe dit:

scherm 1:
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>
    <title>Test</title>
    <script language="Javascript">
    function test() {
    MyWindow.document.all.test.innerHTML = "Hoi1";
    }
    function test2() {
    MyWindow.document.all.test.innerHTML = "Hoi2";
    }
    function windowopen() {
    MyWindow = window.open('tekstscherm.html','nieuw_venster','width=500,height=500,directories=yes,location=yes,menubar=yes,status=yes,toolbar=yes,resizable=yes,scrollbars=yes');
        
    }
    </script>
</head>
<body>

<input type="button" value="hoi" name="hoi" onClick="test()"><br>
<input type="button" value="hoi2" name="hoi2" onClick="test2()"><br>

<input type="button" value="open window" name="open_window" onClick="windowopen()">
</body>
</html>


scherm 2:
code:
1
2
3
4
5
6
7
8
9
<html>
<head>
    <title>Test</title>
</head>
<body leftmargin="40" topmargin="40">

<div id="test" style="font-size: 45px; font-weight: bold; font-family: Verdana"></div>
</body>
</html>


Opzich werkt dit geweldig...Maar als ik het eerste scherm refresh dan herkend hij als het ware het 2de scherm niet meer en dan vult hij ook niets meer in de div.

Weet iemand een oplossing?

  • Johnny
  • Registratie: December 2001
  • Laatst online: 15:50

Johnny

ondergewaardeerde internetguru

Het MyWindow object bestaat zodra de functie windowOpen() heeft gelopen, de eerste keer gebeurd dat, maar als het venster al open is, en je laat die functie niet lopen bestaat het object niet en kun je er dus ook niets mee doen.

Verder is het gebruik van document.all en leftmargin/topmargin erg verouderd en werkt het alleen in MSIE.

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
25
26
27
<html>
<head>
    <title>Test</title>
    <script language="Javascript">
    
function test(text) {
//niet getest, het kan ook dat het zoiets als window['nieuw_venster'] moet zijn!
    window.nieuw_venster.document.getElementById('test').innerHTML = text;
    }
    
    function windowopen() {
window.open('tekstscherm.html','nieuw_venster','width=500,height=500,directories=yes
,location=yes,menubar=yes,status=yes,toolbar=yes,resizable=yes,scrollbars=yes');
        
    }
    </script>
</head>
<body>
<form action="">
<input type="button" value="hoi" name="hoi" onclick="test('hoi1')" /><br/>
<input type="button" value="hoi2" name="hoi2" onclick="test2('hoi2')" /><br/>

<input type="button" value="open window" name="open_window" onClick="windowopen()" />

</form>
</body>
</html>


scherm 2:
code:
1
2
3
4
5
6
7
8
9
<html>
<head>
    <title>Test</title>
</head>
<body style="margin-left: 40px; margin-top: 40px;">

<div id="test" style="font-size: 45px; font-weight: bold; font-family: Verdana"></div>
</body>
</html>

[ Voor 82% gewijzigd door Johnny op 03-01-2004 15:32 ]

Aan de inhoud van de bovenstaande tekst kunnen geen rechten worden ontleend, tenzij dit expliciet in dit bericht is verwoord.


Verwijderd

Topicstarter
Ik ga het ff proberen :D

[ Voor 83% gewijzigd door Verwijderd op 03-01-2004 15:32 ]


Verwijderd

Topicstarter
Heeft iemand een code dat je het scherm kan aanroepen met de naam de je hem hebt meegegeven bij window.open()

window.venster_naam
venster_naam.window
window['venster_naam']

Ik heb de bovenstaande opties geprobeerd...maar het wil niet lukken!

Weet iemand hoe dat moet?

  • Guillome
  • Registratie: Januari 2001
  • Niet online

Guillome

test

Was toch

var blaat = window.open
blaat.close();


Of anders
window.open('url', 'naam' blabla);

En dan iets van window['naam'], maar dit 2e weet ik niet of dat kan

[ Voor 17% gewijzigd door Guillome op 03-01-2004 15:51 ]

If then else matters! - I5 12600KF, Asus Tuf GT501, Gigabyte Gaming OC 16G 5080 RTX, Asus Tuf Gaming H670 Pro, 48GB, Corsair RM850X PSU, SN850 1TB, Arctic Liquid Freezer 280, ASUS RT-AX1800U router


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 15:55

crisp

Devver

Pixelated

Het refresh probleem los je enkel op door de variabele waar de referentie in staat op te nemen in een window dat niet gerefreshed wordt (bijvoorbeeld een hidden frame).
Anders moet je je popup laten pollen naar de opener.

Intentionally left blank

Pagina: 1