我在JavaScript函数中有两个要比较的数字entertedAmount = 65.00和maxPrice = 5000.00。
var entertedAmount = parseFloat(textbox.value).toFixed(2);
var maxPrice = parseFloat(passedMaxPrice).toFixed(2);
if (entertedAmount <= maxPrice) {
var strSplit = textbox.id;
var res = strSplit.split("_");
var rownumber = res[2].substring(res[2].length, 3) - 1;
arrRows[rownumber] = removeSpaces(textbox.value);
sumArray();
isSearchButtonPressed = false;
} else {
alert('Please enter a price less than R' + passedMaxPrice);
textbox.value = 0;
}
如果enterAmount小于maxPrice,则必须输入if语句,但现在不输入if语句,它将进入ELSE语句
答案 0 :(得分:0)
if(Number(entertedAmount) <= Number(maxPrice)){
}else{
}
答案 1 :(得分:0)
toFixed返回一个字符串,因此您必须将该字符串解析为float
if(parseFloat(entertedAmount) <= parseFloat(maxPrice)){
} else{
}
希望这对您有用。
答案 2 :(得分:0)
问题来自您的Tofixed函数,该函数将通过parseFloat获得的十进制转换为字符串。 因此,您必须在其周围加上数字()。
@XmlElement
var textbox = document.getElementById('textbox');
var entertedAmount = Number(parseFloat(textbox.value).toFixed(2));
var maxPrice = Number(parseFloat(5000).toFixed(2));
if (entertedAmount <= maxPrice) {
console.log(entertedAmount + " less than "+ maxPrice );
} else {
alert('Please enter a price less than R');
textbox.value = 0;
}