我正在嘗試制作一個計算器,但是,當您將所需的 2 個數字和 符號輸入到符號輸入中并單擊/按 Enter 時,它只會將數字放在一起。例如,2 2 = 22?一個解決方案會很棒!提前致謝!
<!DOCTYPE html>
<html>
<body>
<input id = "Inpt" placeholder = "Enter First Number Here">
<input id = "Sign" placeholder = "Enter - x / here">
<input id = "Inpt2" placeholder = "Enter Second Number Here">
<button id = "Btn" onclick="yes()">Enter</button>
<br>
<br>
<p id = answer placeholder = "Answer Here"></p>
</body>
<script>
function yes() {
var inf1 = document.getElementById("Inpt").value;
var sign = document.getElementById("Sign").value;
var inf2 = document.getElementById("Inpt2").value;
var ans = document.getElementById("answer");
if (sign.includes(" ")) {
let add = inf1 inf2;
ans.innerHTML = add
}
}
</script>
</html>
uj5u.com熱心網友回復:
原因是它將 視為value字串,因此它concatenates而不是數字操作。一種方法是使用Number():
function yes() {
var inf1 = document.getElementById("Inpt").value;
var sign = document.getElementById("Sign").value;
var inf2 = document.getElementById("Inpt2").value;
var ans = document.getElementById("answer");
if (sign.includes(" ")) {
let add = Number(inf1) Number(inf2);
ans.innerHTML = add
}
}
<!DOCTYPE html>
<html>
<body>
<input id="Inpt" placeholder="Enter First Number Here">
<input id="Sign" placeholder="Enter - x / here">
<input id="Inpt2" placeholder="Enter Second Number Here">
<button id="Btn" onclick="yes()">Enter</button>
<br>
<br>
<p id="answer" nswer placeholder="Answer Here"></p>
</body>
</html>
uj5u.com熱心網友回復:
的值型別getElementById("some-id").value是一個字串,所以你基本上是連接兩個字串變數。要解決這個問題,您需要將輸入string型別轉換為Number型別。
<!DOCTYPE html>
<html>
<body>
<input type="number" id = "Inpt" placeholder = "Enter First Number Here">
<input id = "Sign" placeholder = "Enter - x / here">
<input type="number" id = "Inpt2" placeholder = "Enter Second Number Here">
<button id = "Btn" onclick="yes()">Enter</button>
<br>
<br>
<p id = answer placeholder = "Answer Here"></p>
</body>
<script>
function yes() {
var inf1 = Number(document.getElementById("Inpt").value);
var sign = document.getElementById("Sign").value;
var inf2 = Number(document.getElementById("Inpt2").value);
var ans = document.getElementById("answer");
if (sign.includes(" ")) {
let add = inf1 inf2;
ans.innerHTML = add
}
}
</script>
</html>
uj5u.com熱心網友回復:
<input>接受一個字串。- 您可以通過
document.getElementById(x).value. - 你把兩個字串加在一起。
缺少 2 和 3 之間的步驟,您可以在其中將字串轉換為可以進行計算的數字。如果您在字串上使用“ ”符號,它將追加而不是將它們加在一起。
您可以使用以下任一方法將字串轉換為數字:
parseInt(string);
parseFloat(string);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/405657.html
標籤:
