[英]Javascript comparison not working properly
我正在使用系統的結算部分,並且使用javascript在我的TextBox
放置了一個事件,並且我有兩個文本框。 首先是cashonhand
和change
文本框。 但是我想知道的是為什么兩個文本框之間的比較沒有給我正確的答案。 這是我的代碼:
$(document).ready(function () {
$(document).on('click', '.btn-pay-bill', function () {
var cash = parseFloat(Number($('.cashonhand').val())).toFixed(2);
var amtdue = parseFloat(Number($('.amtdue').text())).toFixed(2);
if (cash <= amtdue) {
alert(cash + ' ' + amtdue + ' ' +"Insufficient Cash!!!");
return false;
}
if (cash >= amtdue) {
return true;
}
return false;
});
那我在這里想念什么? 這是我將100,000
與78,200.00
比較時的輸出:
您是按字母而不是數字進行比較。
請注意, .toFixed()
返回一個字符串 :
返回
數字的字符串表示形式,該形式不使用指數表示法,並且在小數點后第一個數字位具有正好數字 。
在調用.toFixed()
之前,您需要進行此比較。
var cash = parseFloat(Number($('.cashonhand').val()));
var amtdue = parseFloat(Number($('.amtdue').text()));
if (cash <= amtdue) {
alert(cash.toFixed(2) + ' ' + amtdue.toFixed(2) + ' ' +"Insufficient Cash!!!");
return false;
}
您可以在UI中顯示數字的任何地方調用.toFixed()
,也可以創建該值的單獨的字符串版本,例如sCash
和sAmtDue
或其他內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.