【发布时间】:2018-05-10 06:11:01
【问题描述】:
JS代码
'use strict';
$(document).ready(function() {
});
function calculatePPI(inputWidth, inputHeight, inputDiagonal) {
document.getElementById("outputPPI").innerHTML=
((Math.sqrt(Math.pow('inputWidth', 2)) + (Math.pow('inputHeight', 2)))/'inputDiagonal');
}
HTML 代码
<body>
<h2>Length Converter</h2>
<p>The following program will convert your centimeters to inches.</p>
<p>
<label>Width (Pixels):</label>
<input id="inputWidth" type="number" placeholder="Width">
<p>
<label>Height (Pixels):</label>
<input id="inputHeight" type="number" placeholder="Height">
</p>
<p>
<label>Diagonal (Pixels):</label>
<input id="inputDiagonal" type="number" placeholder="Diagonal Length">
</p>
<button onclick="calculatePPI(document.getElementById('inputWidth', 'inputHeight', 'inputDiagonal').value)">Calculate</button>
</p>
<p>PPI: <span id="outputPPI"></span></p>
</body>
每当我尝试计算时,我都会得到 NaN。
谁能帮我解决这个问题?我不确定代码到底哪里出了问题,因为我是 Javascript 编码的新手。
【问题讨论】:
-
你对
getElementById的使用不正确 -
您不能一次从 3 个元素中获取值,即
document.getElementById('inputWidth', 'inputHeight', 'inputDiagonal').value不起作用。您需要分别致电getElementById3 次。 -
不要使用字符串:
Math.pow('inputWidth', 2),而是需要使用实际的变量名:Math.pow(inputWidth, 2) -
另外,在你的函数中,你接受了 3 个变量,但你没有使用它们。即
inputWidth是一个变量,'inputWidth'不是那个变量,它是一个字符串。
标签: javascript html nan