0

Anyone knows why showToast always pops up even if desiredquantity is greater than inventoryCount?

  function checkavailable(){
  var desiredquantity = document.getElementById("bin-Qty").value;
  var inventoryCount = document.getElementById("bin-binItem-quantity").value;
  var itemName = document.getElementById("bin-binItem").value;
  if(desiredquantity > inventoryCount)
  {
    console.log(desiredquantity);
    showToast('There are only ' +inventoryCount +' '+itemName+' left');
  }
  else
  {
    addToTransfer();
  }
}

I have a button to that calls checkavailable

<button type="button"
   onclick ="checkavailable();">
</button>
1
  • 2
    Convert the values read from DOM to Number. You can use Number, parseFloat, parseInt, Unary Plus, etc. Ex: parseInt(document.getElementById("bin-Qty").value, 10); Commented Dec 19, 2016 at 3:09

1 Answer 1

1

Please convert it to number first

Like this

if (+desiredquantity > +inventoryCount) { // + will parse it as number
  console.log(desiredquantity);
  showToast('There are only ' + inventoryCount + ' ' + itemName + ' left');
} else {
  addToTransfer();
}

Or you can use parseInt if value is integer and if value float than use parseFloat

Like this

if (parseInt(desiredquantity) > parseInt(inventoryCount)) {
  console.log(desiredquantity);
  showToast('There are only ' + inventoryCount + ' ' + itemName + ' left');
} else {
  addToTransfer();
}
Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.