我从模板中获取了一个非常简单的网页。在右侧,我有一个div中的链接列表,当点击它们时,我想要一个位于我的服务器上的html页面加载到内部div区域。点击链接时,没有任何反应。我也尝试将innerHtml设置为文本值,以防src部分无效,但这也没有做任何事情。我错过了什么?这看起来就像我经历过的所有例子一样。注意我只给出部分html,所以我知道身体没有关闭等等。
我有:
<body>
<script>
function results()
{
document.getElementsByClassName('mid-left-container').innerHTML="src="..\VRS_BVT\VRS_Test.html""
}
</script>
<div id="main-wraper">
<div id="top-wraper">
<div id="banner">Automation Server</div>
</div>
<div id="mid-wraper">
<div class="mid-wraper-top">
<div class="mid-leftouter">
<div class="mid-left-container">
blah blah
</div>
</div>
<div class="right-container">
<div class="right-container-top">
<h3><span class="yellow-heading">Projects</span></h3>
<ul>
<li><a href="#" onclick="results()">VRS BVT</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
</body>
答案 0 :(得分:2)
getElementsByClassName()
返回匹配元素的数组(实际上是NodeList)。
您正在该阵列上创建一个新的innerHTML
属性,该属性无效。
相反,您需要从数组中获取实际元素并设置其innerHTML
:
document.getElementsByClassName(...)[0].innerHTML = ...
此外,您的字符串文字是无效的语法 您需要使用单引号或转义双引号。
此外,将src="..\VRS_BVT\VRS_Test.html"
放在HTML元素的内容中不会从服务器加载任何内容
您需要使用AJAX或<iframe>
。