簡體   English   中英

javascript比較無法正常工作?

[英]javascript comparison not working properly?

stockQty是200,$(“#txtQty”)。val()是5,但它總是放在其他內容中。 為什么? 我從對象獲取stockQty值,並將stockQty聲明為全局變量,然后從另一個函數中使用它。 我試圖輸出兩個值,它們分別是200和5。怎么了?

if(stockQty>0 && $("#txtQty").val() <= stockQty){}
else{}

5大於200的唯一時間是使用字符串比較時。 而且僅當兩個操作數都是字符串時才會發生,因此在進行任何比較之前,應確保值的類型正確:

var inStock = +stockQty, // may have been a string
stockRequested = +$("#txtQty").val(); // definitely a string

if (stockRequested <= inStock) {
}

對我來說很好。

看到這個小提琴: http : //jsfiddle.net/nVd67/1/

var stockQty = 200;
if(stockQty>0 && $("#txtQty").val() <= stockQty){ alert('true')}
else{alert('false')}

您可能正在獲取字符串值。 使用parseInt()比較數字值。

if(parseInt(stockQty)>0 && parseInt($("#txtQty").val()) <= parseInt(stockQty)){}
else{}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM