首页 > 解决方案 > Javascript比较数字

问题描述

这是我的第一次,所以请温柔。我前段时间写了一个简单的数字比较。但是比较会返回一个“错误”的布尔值。

这是我的代码:

var UpperLimit = document.getElementById("UpperLimit").value;	
var LowerLimit = document.getElementById("LowerLimit").value;	

if (UpperLimit < LowerLimit){
	alert("Upper Limit is smaller as the Lower Limit!")
	return false;	//Exit Function
} else {

// **do something with the Upper and Lower Limit**

}
Lower Limit:<input style=" margin-left: 15px;" class="Limit" id="LowerLimit" type="number">m³</input>
Upper Limit:<input style=" margin-left: 17px;" class="Limit" id="UpperLimit" type="number">m³</input>

如果我(例如)在 HTML 中为下限输入 150,为上限输入 1000,则比较会返回“真”并显示警报。我不知道错误在哪里,我猜 JS 将值解释错误,但我不知道该怎么做。

谢谢你的帮助!

卡利班

标签: javascripthtml

解决方案


您的输入值仍会返回,因此您必须将输入值转换为数字。

你可以这样做:

var UpperLimit = Number(document.getElementById("UpperLimit").value);   
var LowerLimit = Number(document.getElementById("LowerLimit").value);   

推荐阅读