加载时的html javascript调用函数
我想做一些像:加载时的html javascript调用函数,javascript,html,Javascript,Html,我想做一些像: 1. 1296 2. 4624 Square root both numbers and add the result! Answer: ________ [Check button] 如果答案正确,请打开somewhere.html 我制作了这个脚本: <html> <head> <script language="javascript"> window.onload=calc; funct
1. 1296
2. 4624
Square root both numbers and add the result!
Answer: ________
[Check button]
如果答案正确,请打开somewhere.html
我制作了这个脚本:
<html>
<head>
<script language="javascript">
window.onload=calc;
function calc() {
var num1, num2, sqNum1, sqNum2, randomNum, sum, ans;
num1=Math.floor(Math.random()*90)+10;
num2=Math.floor(Math.random()*90)+10;
sqNum1=num1*num1;
sqNum2=num2*num2;
sum=num1+num2;
document.write("1. " + sqNum1 + "<br />");
document.write("2. " + sqNum2 + "<br />");
document.write("<br />");
}
function checkAns(form) {
if (form.ans.value==sum) {
location="somewhere.html";
} else {
alert ("Wrong answer!");
}
}
</script>
</head>
<body>
Square root both numbers and add the result! <br />
<form name='question'>
Answer: <input name='ans' type='password'> <br />
<input type='button' value='Check' onClick='checkAns(this.form)'>
</form>
</body>
</html>
这个脚本有什么问题
调用
加载
函数时,文档将处于关闭状态
您无法在关闭状态下写入
,因此调用写入
将为您调用打开
调用open
将删除现有文档
新内容将写入新文档
使用(
createElement
、appendChild
和friends)编辑现有文档。调用load
函数时,文档将处于关闭状态
您无法在关闭状态下写入
,因此调用写入
将为您调用打开
调用open
将删除现有文档
新内容将写入新文档
使用(
createElement
、appendChild
和friends)编辑现有文档。您需要以下内容:
<html>
<head>
<script language="javascript">
function calc() {
var num1, num2, sqNum1, sqNum2, randomNum, sum, ans;
num1=Math.floor(Math.random()*90)+10;
num2=Math.floor(Math.random()*90)+10;
sqNum1=num1*num1;
sqNum2=num2*num2;
sum=num1+num2;
document.getElementById("sum").value = sum;
var question = document.getElementById("question");
var numbers = document.getElementById("numbers");
var br = document.createElement('br');
var txt = document.createTextNode("1. " + sqNum1);
numbers.appendChild(txt);
numbers.appendChild(br);
var txt = document.createTextNode("2. " + sqNum2);
numbers.appendChild(txt);
txt.appendChild(question);
}
function checkAns(form) {
if (document.getElementById("ans").value == document.getElementById("sum").value) {
var newWin = open('somewhere.html','windowName','height=300,width=300');
} else {
alert ("Wrong answer!");
}
}
</script>
</head>
<body onload="calc();">
<form name='question'>
<div id="numbers">
</div>
<br/>
Square root both numbers and add the result! <br />
<div id="question">
Answer: <input id='ans' name='ans' type='password'> <br />
<input type='button' value='Check' onClick='checkAns(this.form)'>
</div>
<input id='sum' type='hidden' value=''/>
</form>
</body>
</html>
函数计算(){
变量num1、num2、sqNum1、sqNum2、randomNum、sum、ans;
num1=数学地板(数学随机()*90)+10;
num2=数学地板(数学随机()*90)+10;
sqNum1=num1*num1;
sqNum2=num2*num2;
总和=num1+num2;
document.getElementById(“sum”).value=sum;
var question=document.getElementById(“问题”);
var numbers=document.getElementById(“数字”);
var br=document.createElement('br');
var txt=document.createTextNode(“1.”+sqNum1);
数字。追加子项(txt);
数字。追加子项(br);
var txt=document.createTextNode(“2.”+sqNum2);
数字。追加子项(txt);
txt.appendChild(问题);
}
功能检查(表格){
if(document.getElementById(“ans”).value==document.getElementById(“sum”).value){
var newWin=open('somewhere.html','windowName','height=300,width=300');
}否则{
警惕(“回答错误!”);
}
}
求两个数字的平方根,然后将结果相加
回答:
这不是最好的答案,这是一种你可以用来跟随你的发展的方法你需要这样的东西:
<html>
<head>
<script language="javascript">
function calc() {
var num1, num2, sqNum1, sqNum2, randomNum, sum, ans;
num1=Math.floor(Math.random()*90)+10;
num2=Math.floor(Math.random()*90)+10;
sqNum1=num1*num1;
sqNum2=num2*num2;
sum=num1+num2;
document.getElementById("sum").value = sum;
var question = document.getElementById("question");
var numbers = document.getElementById("numbers");
var br = document.createElement('br');
var txt = document.createTextNode("1. " + sqNum1);
numbers.appendChild(txt);
numbers.appendChild(br);
var txt = document.createTextNode("2. " + sqNum2);
numbers.appendChild(txt);
txt.appendChild(question);
}
function checkAns(form) {
if (document.getElementById("ans").value == document.getElementById("sum").value) {
var newWin = open('somewhere.html','windowName','height=300,width=300');
} else {
alert ("Wrong answer!");
}
}
</script>
</head>
<body onload="calc();">
<form name='question'>
<div id="numbers">
</div>
<br/>
Square root both numbers and add the result! <br />
<div id="question">
Answer: <input id='ans' name='ans' type='password'> <br />
<input type='button' value='Check' onClick='checkAns(this.form)'>
</div>
<input id='sum' type='hidden' value=''/>
</form>
</body>
</html>
函数计算(){
变量num1、num2、sqNum1、sqNum2、randomNum、sum、ans;
num1=数学地板(数学随机()*90)+10;
num2=数学地板(数学随机()*90)+10;
sqNum1=num1*num1;
sqNum2=num2*num2;
总和=num1+num2;
document.getElementById(“sum”).value=sum;
var question=document.getElementById(“问题”);
var numbers=document.getElementById(“数字”);
var br=document.createElement('br');
var txt=document.createTextNode(“1.”+sqNum1);
数字。追加子项(txt);
数字。追加子项(br);
var txt=document.createTextNode(“2.”+sqNum2);
数字。追加子项(txt);
txt.appendChild(问题);
}
功能检查(表格){
if(document.getElementById(“ans”).value==document.getElementById(“sum”).value){
var newWin=open('somewhere.html','windowName','height=300,width=300');
}否则{
警惕(“回答错误!”);
}
}
求两个数字的平方根,然后将结果相加
回答:
这不是最好的答案,这是您可以用来跟踪开发的一种方法输出是正确的,但功能仍然不能正常工作,按下按钮后没有检查答案。无论如何,谢谢你的脚本,也许可以帮助我理解昆汀的解释。对不起,我想你只需要加载数字,我没有看到checkAns函数。我会检查输出是否正确,但功能仍然不能正常工作,按下按钮后没有检查答案。无论如何,谢谢你的脚本,也许可以帮助我理解昆汀的解释。对不起,我想你只需要加载数字,我没有看到checkAns函数。我将检查您将遇到的另一个问题是在
calc
函数中声明变量sum
。当在函数内部用var
声明变量时,其作用域仅限于该函数内部。了解有关JavaScript中作用域的更多信息。您将遇到的另一个问题是在calc
函数中声明变量sum
。当在函数内部用var
声明变量时,其作用域仅限于该函数内部。了解有关JavaScript中作用域的更多信息。