由于某种原因没有调用JavaScript函数

时间:2015-10-16 00:42:26

标签: javascript function

我很困惑为什么它没有进入这个功能。起初,我认为它可能是挂在innerHTML上的东西,但这不可能,因为它甚至没有进入函数。我知道下面的代码是错误的,而不是iframe源中的页面,因为它们工作正常,问题正在发生。

<html>
<head>
<script>
function setFrameContent(num){



window.alert("Ow!");

if (num == 1)
{

 document.getElementById("div1").innerHTML = "
<iframe src='./cosTweets1.html' style='width: 1000px; height: 190px;'></iframe>";


}

else if (num == 2)
{

 document.getElementById("div1").innerHTML = "
<iframe src='./cosTweets2.html' style='width: 1000px; height: 190px;'></iframe>";

}


}
</script>
</head>
<body>




<div style="border: 1px solid black; width: 1000px; background-color: blue;">
<button id="b1" value="1" style="width: 90px;"  onclick="setFrameContent(1)"> 1</button>   
<button id="b2" value="2" style="width: 90px;" onclick="setFrameContent(2)"> 2</button>
<button id="b3" value="3" style="width: 90px;"> 3</button>
<button id="b4" value="4" style="width: 90px;"> 4</button>
<button id="b5" value="5" style="width: 90px;"> 5</button>
<button id="b6" value="6" style="width: 90px;"> 6</button>
<button id="b7" value="7" style="width: 90px;"> 7</button>
<button id="b8" value="8" style="width: 90px;"> 8</button>
<button id="b9" value="9" style="width: 90px;"> 9</button>
<button id="b10" value="10" style="width: 90px;"> 10</button>

</div>

<div id="div1" style="border: 1px solid black; width: 1000px;">

<iframe src="./cosTweets1.html" style="width: 1000px; height: 190px;"></iframe>

</div>



</body>
</html>

奇怪的是,我正在努力的其他代码,另一件事,确实有效,所以我不能仅仅传递一个引起问题的数字。

<html>
<head><title> SPRBC Events Demo </title>

<style>

p { font-size: 2.5em;}
</style>
<script>

var array = ["Bla bla bla", "Yak yak yak", "Mongoose", "We need more funds!"];


function changeText(index)
{

document.getElementById("p1").innerHTML = 

array[index];

}


</script>
</head>
<body>

<p id="p1" > So frustrating! </p>

<a href="#" onclick="changeText(0)">Click</a>
<a href="#" onclick="changeText(1)">Click</a>
<a href="#" onclick="changeText(2)">Click</a>
<a href="#" onclick="changeText(3)">Click</a>
</body>
</html>

1 个答案:

答案 0 :(得分:4)

JavaScript中的字符串不能超过一行,但数组可以。这就是为什么你的第一个代码示例不起作用而第二个代码样本不起作用的原因。

使用

document.getElementById("div1").innerHTML = "<iframe src='./cosTweets1.html' style='width: 1000px; height: 190px;'></iframe>";

document.getElementById("div1").innerHTML = "<iframe src='./cosTweets2.html' style='width: 1000px; height: 190px;'></iframe>";