onclick not loading iframe

onclick not loading iframe

本文关键字:iframe loading not onclick      更新时间:2023-09-26

这是我使用的JS

<script type="text/javascript">
function loader(value, url)
{
    document.getElementById("page").innerHTML=value;
    document.getElementById("display").src = url;
}var home = "HOME";
var admin = "ADMINISTARTOR";
var sales = "SALES";
var isve = "ISVE";
</script>

这是在文件的开头。我做了一个包含链接的侧边栏:

<li><a href=<?php echo "'"/".INDEX."/sales/'"";?> onclick="loader(sales, this.href)">Sales</a>
    <ul>
        <li><a href=<?php echo "'"/".INDEX."/sales/move'"";?> onclick="loader(sales, this.href)">Movement</a></li>
        <li><a href=<?php echo "'"/".INDEX."/sales/cancel'"";?> onclick="loader(sales, this.href)">Cancel</a></li>
        <li><a href=<?php echo "'"/".INDEX."/sales/add'"";?> onclick="loader(sales, this.href)">Add new HW</a></li>
    </ul>
</li>

我有一个目标帧作为:

<div id='content' style='margin-left: 170px; height: 700px; width: 800px; overflow: auto;'>
    <iframe id='display' src=<?php echo "'"/".INDEX."/main/home'"";?> style='height: 650px; width: 800px;'></iframe>
</div>

当我单击顶层链接(在我的情况下是Sales)时,它就起作用了,相关文档会显示在目标框架中,但当我导航到子菜单链接时,它就会加载到整个页面中。请帮忙!

看起来您正在尝试做一些类似于AJAX已经做过的事情。您可以调整加载程序类以使用jQuery的加载函数。如果你想的话,这也可以让你去掉iframe,只需将页面加载到div中。在我看来,将其加载到div将是更好的方法。

您需要在页面标题中引用jQuery:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>

然后你的新加载程序会看起来像这样:

function Loader(page) {
    $('#display').load(page + '.html');
}

这将根据您传递的页面名称将一个单独的HTML页面的内容加载到displaydiv中。我建议您阅读更多关于如何使用jQuery和AJAX加载方法的内容。http://api.jquery.com/load/

我不确定你想做什么,但根据我从代码中了解到的,你想在点击不同链接时显示不同的iFrame。

因此,如果你想使用javascript,所有数据都应该加载到浏览器中,然后你可以根据点击的链接隐藏或取消隐藏iframe。因此,您可以为不同的链接使用不同的iframe,然后相应地显示或隐藏它们。

或者,您可以使用AJAX并调用服务器来发送单击的另一个链接的数据。