没有得到预期的结果 - javascript
Not getting the expected results - javascript
本文关键字:结果 javascript 更新时间:2023-09-26
我正在按照一本书中的这个例子,但我没有得到与书中显示的相同的结果。
两个网页。
钙化顶架.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<script type="text/javascript">
function calcFactorial(factorialNumber) {
var factorialResult = 1;
for (; factorialNumber > 0; factorialNumber--) {
factorialResult = factorialResult * factorialNumber;
}
return factorialResult;
}
</script>
</head>
<body>
<frameset cols="100%,*">
<frame name="fraCalcFactorial" src="calcfactorial.html"></frame>
</frameset>
</body>
</html>
钙化.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<script type="text/javascript">
function butCalculate_onclick() {
try {
if (window.top.calcFactorial == null) {
throw "This page is not loaded within the correct frameset";
};
if (document.form1.txtNum1.value == "") {
throw "!Please enter a value before you calculate its factorial";
};
if (isNaN(document.form1.txtNum1.value)) {
throw "!Please enter a valid number";
};
if (document.form1.txtNum1.value < 0) {
throw "!Please enter a positive number";
};
document.form1.txtResult.value = window.parent.calcFactorial(document.form1.txtNum1.value);
}
catch (exception) {
if (typeof(exception) == "string") {
if (exception.charAt(0) == "!") {
alert(exception.substr(1));
document.form1.txtNum1.focus();
document.form1.txtNum1.select();
} else {
alert(exception);
}
} else {
alert("The following error occurred " + exception.message);
}
}
}
</script>
</head>
<body>
<form action="" name="form1">
<input type="text" name="txtNum1" size="3" /> factorial is
<input type="text" name="txtResult" size="25" /><br />
<input type="button" value="Calculate Factorial" name="butCalculate" onclick="butCalculate_onclick()" />
</form>
</body>
</html>
我不断收到错误"此页面未在正确的框架集中加载"。
本书中这个练习的目的是展示尝试接球投掷的工作原理。
谢谢
好的,我的评论仍然非常相关,但我确实发现了问题:您实际上并不是指父级,因为您需要iframe
.更改以下代码:
<frameset cols="100%,*">
<frame name="fraCalcFactorial" src="calcfactorial.html"></frame>
</frameset>
对此:
<iframe name="fraCalcFactorial" src="calcfactorial.html"></iframe>
现在window.top
子框架可以访问!老实说,我不确定为什么会这样,因为我对框架集的了解非常有限,而且几年前我忘记了如何访问它们。
但说真的,如果它教你用<frameset>
做事,这听起来不像一本好书......我已经快20年没见过这些了!你最好的朋友和资源是Mozilla Developer Network
。我发现他们的代码解释得很好,它包含大量现代、最新的网络!
相关文章:
- 奇怪的Javascript结果
- Javascript(jQuery)给了我奇怪的结果
- 数组删除重复结果Javascript
- 比较数组中的连续元素不会返回任何结果(javascript)
- split(' ') 函数没有给出正确的结果 Javascript
- 如何产生结果Javascript嵌套缺陷
- I'm试图使用onclick函数显示函数的结果.(javascript)
- 计算结果Javascript中不同数字的数量
- 以 HTML 格式显示计算结果 (javascript)
- 没有得到预期的结果 - javascript
- 从函数返回结果 - JavaScript
- 在一行中返回来自三元的结果(JavaScript)
- 骰子效果-如何在最后显示假结果和真结果(JavaScript)
- WebGL纹理加载结果(Javascript)类型错误
- 限制搜索结果Javascript
- IF语句多个答案-相同的结果Javascript
- 双异步循环,如何保证正确排序顺序的最终结果?(javascript)
- 添加图像到测验结果javascript
- 奇怪的结果javascript比较
- 如何改变iFrame结果JavaScript警告框