RyzzenMedlem sedan mars 2000267 inlägg Vill kunna ändra på innhållet i en fram när jag klickar på en knapp.
kod snutt
<div id="user_admin" style="position:absolute; width:450px; height:400px; text-align: left; padding: 0px; font-size: 8pt; z-index:1; left: 100px; top: 100px; background-color: #EBEBEB; border: 1px solid #000000; visibility: hidden">
<img name="board" src="images/disk_win.gif" width="450" height="20" border="0" usemap="#m_admin" alt="">
<map name="m_admin">
<area shape="rect" coords="427,0,450,20" href="javascript:skf_ShowHideLayer('user_admin','hidden');document.all.frame_admin.src='admin/user.ph'" title="Stäng fönstret" alt="Stäng fönstret" >
</map>
<div style="padding: 0px;">
<iframe name="frame_admin" id="frame_admin" width="450" height="400" src="admin/user.php">
</iframe>
</div>
</div>
kod snutt slut
Som ni ser så anropar jag en funktion som heter skf_ShowHideLayer när jag klickar inom området för att dölja lagret. Har även kastat in ett commando direkt efter som enligt mig borde ändra på source för iframe'en. Men vad som händer är att en ny sida med texten "admin/user.php" utskriven på.
Vart tänker jag fel.
Till att börja med har "user_admin" visibility satt till hidden, så att den inte syns från början.
Src ändrar för det andra inte adressen till en sida utan adressen till tex en bild i <img> eller ett skript i <script>. Jag rekommenderar window.open istället.
<script>
function doStuff(){
document.getElementById("user_admin").style.visibility = "hidden";
window.open("admin/user.ph","frame_admin");
}
</script>
<div id="user_admin" style="position:absolute; width:450px; height:400px; text-align: left; padding: 0px; font-size: 8pt; z-index:1; left: 100px; top: 100px; background-color: #EBEBEB; border: 1px solid #000000; visxibility: hidden">
<img name="board" src="images/disk_win.gif" width="450" height="20" border="0" usemap="#m_admin" alt="">
<map name="m_admin">
<area shape="rect" coords="427,0,450,20" href=" javascript:doStuff();" title="Stäng fönstret" alt="Stäng fönstret" >
</map>
<div style="padding: 0px;">
<iframe name="frame_admin" id="frame_admin" width="450" height="400" src="admin/user.php">
</iframe>
</div>
</div>
dectgapMedlem sedan sep. 20021 655 inlägg Hur ser skf_ShowHideLayer() ut?
I övrigt ser jag inget som ser konstigt ut.
nitro2k01
Du har nog läst fel, för Ryzzen vill ändra vilken sida som visas i iframen (som jag har förstått det), och då passar det utmärkt att ändra src.
RyzzenMedlem sedan mars 2000267 inlägg function skf_ShowHideLayer(TheLayer,TheAttrib) {
if (parseInt(navigator.appVersion) > 3) {
eval(layerVar + '["' + TheLayer + '"]' + styleVar + '.visibility = "' + TheAttrib + '"');
}
}
dectgap. du har hellt rätt.
löste fet iofs med hård hack nu...
la till en funktion vid namn
function update_iframe(objName, h, w, src)
{
x = MM_findObj(objName);
if(x) x.innerHTML='<iframe width="' +w+ '" height="' +h+ '" src="' +src+ '">';
}
och skrev om koden på det här sättet
<div id="user_admin" style="position:absolute; width:450px; height:400px; text-align: left; padding: 0px; font-size: 8pt; z-index:1; left: 100px; top: 100px; background-color: #EBEBEB; border: 1px solid #000000; visibility: hidden">
<img name="board" src="images/disk_win.gif" width="450" height="20" border="0" usemap="#m_admin" alt="">
<map name="m_admin">
<area shape="rect" coords="427,0,450,20" href="javascript:skf_ShowHideLayer('user_admin','hidden');update_iframe('frame_admin', '400', '450', 'admin/user.php');" title="Stäng fönstret" alt="Stäng fönstret" >
</map>
<div id="frame_admin" style="padding: 0px;">
<iframe width="450" height="400" src="admin/user.php">
</iframe>
</div>