脚本中的数字格式不正确

时间:2017-09-01 18:55:30

标签: javascript jquery

<pre>
  <input type='text' value='0' class='number' name='amount1'>
  <input type='text' value='0' class='number' name='amount2'>
  <input type='text' value='0' class='total' name='total'>
</pre>

<script>
var Total=0;
$(".number").focusout(function(){
if(!isNaN(parseInt($(this).val())) || parseInt($(this).val())>=0){
Total+=parseInt($(this).val());
$(".total").text(Total);
}
});
</script>
  1. 当我放入文本框'100hai'时,javascript取100就是一个数字。 用100计算 2.当我放入文本框asdas100时,可以进行验证。 如何处理1.问题

3 个答案:

答案 0 :(得分:0)

将您的HTML更改为

<pre>
  <input type="number" value="0" class="number" name="amount1" min="1">
 <input type="number" value="0" class="number" name="amount2" min="1">
  <input type='text' value='0' class='total' name='total'>
</pre>

通过设置最小值,您可以确保使用不能插入低于

的值

答案 1 :(得分:0)

如果它解决了您的问题,请尝试以下代码:

$(".number").keypress((function (e) {
 //if the letter is not digit then display error and don't type anything
 if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
 //display error message
    $("#errmsg").html("Digits Only").show().fadeOut("slow");
           return false;
   }
  else {
  Total+=parseInt($(this).val());
  $(".total").text(Total); }

答案 2 :(得分:0)

不要使用parseInt()方法。使用数字(/ 您的变量 /)。