【问题标题】:How do i retrieve input values in a script? [closed]如何在脚本中检索输入值? [关闭]
【发布时间】:2017-07-04 01:22:09
【问题描述】:
我不知道为什么它不起作用。如何检索输入值?
<body>
<script>
function toCelsius() {
var g = document.getElementById("f").innerHTML;
var b = (5/9) * (g-32);
}
document.getElementById("demo").innerHTML = b;
</script>
Fahrenheit = <input id="f" type=text size=6>
<input type=button value="Bereken" onClick="toCelsius()">
<p id="demo"></p>
</body>
【问题讨论】:
标签:
javascript
html
input
var
【解决方案1】:
这一行:
document.getElementById("demo").innerHTML = b;
运行时间:
- 当
demo在文档中不存在时
-
b 尚未定义时
- 其中
b 超出范围(因为b 在函数内部定义)
您需要将该行移入函数
这一行:
var g = document.getElementById("f").innerHTML;
…尝试读取输入元素的子元素,但输入是无效元素:它们没有子元素。
您需要改为读取输入的值。
<body>
<script>
function toCelsius() {
var g = document.getElementById("f").value;
var b = (5 / 9) * (g - 32);
document.getElementById("demo").innerHTML = b;
}
</script>
Fahrenheit =
<input id="f" type=text size=6>
<input type=button value="Bereken" onClick="toCelsius()">
<p id="demo"></p>
</body>
【解决方案3】:
innerHTML 属性是文档对象模型 (DOM) 的一部分,它允许 Javascript 代码操作正在显示的网站。具体来说,它允许读取和替换给定 DOM 元素(HTML 标记)中的所有内容
要从输入字段中获取值,您需要使用
var your_var = document.getElementById("filed-id").value;
所以,你的最终代码如下:
<body>
<script>
function toCelsius() {
var g = document.getElementById("f").value;
var b = (5/9) * (g-32);
}
document.getElementById("demo").innerHTML = b;
</script>
Fahrenheit = <input id="f" type=text size=6>
<input type=button value="Bereken" onClick="toCelsius()">
<p id="demo"></p>
</body>