Probleem met Frame laden

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Manuel Van den hoogaard

Manuel Van den hoogaard

21/07/2014 17:01:49
Quote Anchor link
Hallo Allemaal,

Ik zit met een klein probleempje waar ik dus maar niet uitkom.

Ik heb nog een oude website waar ik aan het knutselen ben dat werkt in Frames.
nu heb ik een tool gemaakt waarmee je via Select (dubbelklik) wordt doorverwezen naar een nieuwe pagina.
echter wordt deze in het frame geladen als waar de balk staat. Dit is dus fout.
Ik wil dus graag dat de pagina in het andere frame wordt geladen.

De framenaam waarin het selectbalkje staat weergegeven: Rechterzijde
De framenaam waarin het geladen moet worden: Linkerzijde


Hieronder de code:

<body onLoad="document.Linkerzijde.items.selectedIndex.value=0;">
<select name=items onchange="if(selectedIndex != 0) location = options[selectedIndex].value;" size="17"
style="height:40px;width: 125px; font-size: 10px; font-family: verdana, arial; border: none; color: #DDDDDD; line-height: 15px; background-color:#3e3e3e;">

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
$data
= mysql_query("SELECT * FROM ledenbeheer");
while ($info = mysql_fetch_array($data)) {
$login = $info['inlognaam'];

echo "<option value=\"/accountnamen.php?p=$login\">$login</option>";
}

?>


Wie o Wie weet het foutje ?
 
PHP hulp

PHP hulp

03/10/2022 16:20:10
 
Frank Nietbelangrijk

Frank Nietbelangrijk

21/07/2014 18:45:46
Quote Anchor link
1. zorg dat het iframe een id krijgt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<iframe id="myFrame">


2. verander niet 'de location van de pagina' maar in plaats daarvan het 'src attribuut' van het element met het id dat je wilt veranderen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3

<select name=items onchange="if(selectedIndex != 0) document.getElementById('myFrame').src = options[selectedIndex].value;" size="17"
style="height:40px;width: 125px; font-size: 10px; font-family: verdana, arial; border: none; color: #DDDDDD; line-height: 15px; background-color:#3e3e3e;">
Gewijzigd op 21/07/2014 18:48:39 door Frank Nietbelangrijk
 
Manuel Van den hoogaard

Manuel Van den hoogaard

21/07/2014 22:27:56
Quote Anchor link
Hmm, Ik werk met de oude Frame optie.
Maar deze get elementbyid myframe werkt ook niet..
Dit heb ik dus nu staan:


<frame src="home.php" name="hoofd">

^^

<select name=items onchange="if(selectedIndex != 0) document.getElementById('hoofd').src = options[selectedIndex].value;" size="17"
style="height:40px;width: 125px; font-size: 10px; font-family: verdana, arial; border: none; color: #DDDDDD; line-height: 15px; background-color:#3e3e3e;">
 
Frank Nietbelangrijk

Frank Nietbelangrijk

21/07/2014 22:30:41
Quote Anchor link
ik zei geef hem een id. :-)
dus:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<frame src="home.php" id="hoofd" name="hoofd">


Toevoeging op 21/07/2014 22:33:41:

Wel even opletten want ieder id mag slechts éénmaal aan een element toegekend worden.

dit is dus fout:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<frame src="home.php" id="hoofd" name="hoofd">
// vijftig regels verder
<span id="hoofd">
 
Manuel Van den hoogaard

Manuel Van den hoogaard

22/07/2014 11:10:48
Quote Anchor link
Hmm, ook dat werkt niet.
heb voor de dubbelcheck ook een ander ID gebruikt, maar het laad helemaal niet meer.


Dit is het bestand rechterzijde:

<select name=items onchange="if(selectedIndex != 0) document.getElementById('hoofdframepagina').src = options[selectedIndex].value;" size="17"
style="height:40px;width: 125px; font-size: 10px; font-family: verdana, arial; border: none; color: #DDDDDD; line-height: 15px; background-color:#3e3e3e;">

<option value="/phpbestand.php?x=$login">$login</option>
<option value="/phpbestand.php?x=$login2">$login2</option>
<option value="/phpbestand.php?x=$login3">$login3</option>
<option value="/phpbestand.php?x=$login4">$login4</option>


dit is het bestand index:

<frameset cols="*,170" frameborder="NO" border="5" framespacing="0">
<frameset rows="135,*" cols="*" frameborder="NO" border="0" framespacing="0">
<frame src="bovenbalk.php" name="topFrame" target="hoofd" scrolling="No" noresize >
<frameset rows="*" cols="180,*" framespacing="0" frameborder="NO" border="0">
<frame name="inhoud" target="hoofd" src="menu.php">
<frame src="home.php" id="hoofdframepagina" name="hoofd">
</frameset>
 
Obelix Idefix

Obelix Idefix

22/07/2014 14:35:49
Quote Anchor link
Waarom nog met frames blijven knutselen? Dat is iets dat standaard was in de vorige eeuw.
Ondertussen is er het nodige verandert. Ook inline css is bv. iets wat niet erg gangbaar is meer tegenwoordig.
En de intrede van HTML5.
 
Jacco Engel

Jacco Engel

22/07/2014 15:09:02
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
onchange="if(selectedIndex != 0) location = options[selectedIndex].value;"


veranderen in
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
onchange="if(selectedIndex != 0) document.rechterZijde.location = options[selectedIndex].value;"


als ik me goed herinner (frames is echt al heel lang geleden gelukkig :P)
 
Frank Nietbelangrijk

Frank Nietbelangrijk

22/07/2014 16:52:40
Quote Anchor link
Sorry we beginnen nog eens opnieuw. Je hebt het id van de <select> nodig. als je dus een <select id="pindakaas"> hebt dan moet je in onderstaande code 'id-van-je-selectbox' vervangen voor 'pindakaas' met enkele quotes.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
onchange="var s = document.getElementById('id-van-je-selectbox'); document.getElementById('hoofd').src = s.options[s.selectedIndex].value;"

Ik heb die if() gedeelte er even uitgelaten zodat je eerst kan zien of het werkt
Gewijzigd op 22/07/2014 16:54:46 door Frank Nietbelangrijk
 
Manuel Van den hoogaard

Manuel Van den hoogaard

23/07/2014 10:31:00
Quote Anchor link
Op beide bovenstaande manieren laad hij de pagina niet meer.

Ik heb het voor het gemak even zo gemaakt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<select id=selectbox onchange="var s = document.getElementById('selectbox'); document.getElementById('hoofd').src = s.options[s.selectedIndex].value;"

size="17"
style="height:40px;width: 125px; font-size: 10px; font-family: verdana, arial; border: none; color: #DDDDDD; line-height: 15px; background-color:#3e3e3e;">
<option>Selecteer een optie</option>
<option value="/accountnamen.php">Optie1</option>
<option value="/accountnamen.php">Optie2</option>
<option value="/accountnamen.php">Optie3</option>
</select>



Op deze manier werkt het wel maar wordt het dus in het verkeerde frame geladen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<td>
<select onchange="if(selectedIndex != 0) location = options[selectedIndex].value;"
size="17"
style="height:40px;width: 125px; font-size: 10px; font-family: verdana, arial; border: none; color: #DDDDDD; line-height: 15px; background-color:#3e3e3e;">
 
<option>Selecteer een optie</option>
<option value="/accountnamen.php">Optie1</option>
<option value="/accountnamen.php">Optie2</option>
<option value="/accountnamen.php">Optie3</option>
</select>
</td>
Gewijzigd op 23/07/2014 10:31:22 door Manuel Van den hoogaard
 
- SanThe -

- SanThe -

23/07/2014 11:43:58
Quote Anchor link
Het formulier:
<form id="form" target="hoofd" method="post" action="hoofd.php">
<select name="naam" onchange="document.getElementById('form').submit();">

En in hoofd.php:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
if(isset($_POST['naam']))
{

    // doe iets
}
else
{
    // standaard inhoud
}
?>

?>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.