这应该计算周长,但是,我只得到一个零返回。我究竟做错了什么?
<html>
<head>
<script type="text/javascript">
var index = false;
var text = "This text shifts";
var Pi = 3.14159265;
var dia = document.getElementById("txtdia");
var circumf = dia * Pi;
function DisplayText(){
document.getElementById("txtcircumf").value = circumf;
}
</script>
</head>
<body>
<form>
<input type="text" id="txt1"/>
<input type="text" id="txt2"/><br>
<input type="text" name="txtdia" />
<input type="text" name="txtcircumf" />
<input type="button" value="Change Text" onclick="DisplayText()"/>
</form>
</body>
</html>
最佳答案
您遇到的主要问题是该脚本将在您的 dom 准备好之前运行。因此,即使您正确获取了直径的值,它仍然无法工作,因为 document.getElementById("txtdia")
不会返回任何内容。
我每次都会获取直径值。
function DisplayText(){
var dia = document.getElementById("txtdia").value;
var circumf = dia * Pi;
document.getElementById("txtcircumf").value = circumf;
}
<小时/>
当然,另一个选择是将整个脚本放在 html 之后。即
</body>
<script type="text/javascript">
var index = false;
var text = "This text shifts";
关于输入的 JavaScript 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20887820/