javascript - 如何从输入框中获取一些输入,放入变量中,然后使用 HTML 和 Javascript 输出到 span id?
问题描述
这是我目前使用的代码,它似乎没有输出任何东西,所以我不确定我哪里出错了:
注意:div“Calc-Tab-3”一开始是隐藏的
代码
function myHoursPumpIsRunFunction() {
var ThisIsMyHoursRun = document.getElementById("slideRangeHours").value;
document.getElementById("myHoursRan").innerHTML = ThisIsMyHoursRun;
}
function GetTheResults() {
var Volts = parseInt(document.getElementById('Volts').value);
var Amps = parseInt(document.getElementById('Amps').value);
var HoursPumpIsRan = parseInt(document.getElementsById('slideInputValueHours').value);
var KwhPerDay = (Volts * Amps) / 1000 * HoursPumpIsRan;
document.getElementById("ResultsKwhPerDay").innerHTML = KwhPerDay;
}
<div class="Container-1">
Volts: <input type="number" class="tabinput" id="Volts" min="1">
Amps: <input type="number" class="tabinput" id="Amps" min="1">
<span>How many hours do you run your pump for: </span>
<span class="slideOutputValueHours" id="myHoursRan">7</span> Hours
<input type="range" class="slideInputValueHours slider" id="slideRangeHours" value="7" min="1" max="24" step="1" oninput="myHoursPumpIsRunFunction()">
<input type="button" class="CalcButtons" onclick="document.getElementById('Container-1').style.display='none';document.getElementById('Calc-Tab-3').style.display='block';GetTheResults()" value="Calculate Results">
<div id="Calc-Tab-3">
Total kWh per day: <span id="ResultsKwhPerDay"></span> KWh per day
</div>
</div>
我的第二个问题是,如果 div 类“Container-1”在单击按钮后立即显示为 none,我还能从这些输入框中获取信息吗?
解决方案
是的,如果 div 类“Container-1”在单击按钮后立即显示为 none,您可以从这些输入框中获取信息。您的代码不起作用,因为 js 中有多个错误(您始终可以通过在任何浏览器上使用检查元素功能来检查 js 错误)。错误:
- document.getElementById('Container-1').style.display='none'; 'Container-1' 是一个类,因此您无法通过使用 getElementById 来获取它,要么使用 document.getElementsByClassName,要么将其更改为 'id' 而不是类。
- var HoursPumpIsRan = parseInt(document.getElementsById('slideInputValueHours').value); 与错误 1 相同,“slideInputValueHours”是一个类,并且函数名称是“getElementById”而不是“getElementsById”。
这是工作代码链接
Javascript:
function myHoursPumpIsRunFunction() {
var ThisIsMyHoursRun = document.getElementById("slideRangeHours").value;
document.getElementById("myHoursRan").innerHTML = ThisIsMyHoursRun;
}
function GetTheResults() {
document.getElementById('Container-1').style.display='none';
document.getElementById('Calc-Tab-3').style.display='block';
var Volts = parseInt(document.getElementById('Volts').value);
var Amps = parseInt(document.getElementById('Amps').value);
var HoursPumpIsRan =
parseInt(document.getElementById('slideRangeHours').value);
var KwhPerDay = (Volts * Amps) / 1000 * HoursPumpIsRan;
document.getElementById("ResultsKwhPerDay").innerHTML = KwhPerDay;
}
HTML:
<div id="Container-1">
Volts: <input type="number" class="tabinput" id="Volts" min="1"> Amps: <input type="number" class="tabinput" id="Amps" min="1">
<span>How many hours do you run your pump for: </span><span class="slideOutputValueHours" id="myHoursRan">7</span> Hours
<input type="range" class="slideInputValueHours slider" id="slideRangeHours" value="7" min="1" max="24" step="1" oninput="myHoursPumpIsRunFunction();">
<input type="button" class="CalcButtons" onclick="GetTheResults();" value="Calculate Results">
</div>
<div id="Calc-Tab-3" style="display:none;">
Total kWh per day: <span id="ResultsKwhPerDay"></span> KWh per day
</div>
推荐阅读
- javascript - 有条件地将 x 个数组项推送到另一个数组
- python - 查找列中每个值之间的中点(Python)
- powershell - Powershell 比较 2 个对象上的 2 个 csv 文件并上传 3 个文件
- r - 在 if 条件 %in% 操作期间加速 R 的 grep
- assembly - VS2019 编译 asm 时无法打开文件 .obj
- fortran - 错误: (1) 处的不可分类声明?在 do while 语句下的行
- c# - WPF C# DataGrid - 检测用户在尝试保存整个文件时尚未在一行上按回车键
- javascript - Javascript导致某些链接不起作用
- laravel - 当我使用 laravel 的 DB 外观进行简单连接时,我得到了与结果相同的行
- tensorflow - 如何使用训练有素的 Keras CNN 模型对新的未标记数据进行预测