Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/405.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript中添加其他文本框值之前,如何避免文本框中出现NaN_Javascript_Html - Fatal编程技术网

在javascript中添加其他文本框值之前,如何避免文本框中出现NaN

在javascript中添加其他文本框值之前,如何避免文本框中出现NaN,javascript,html,Javascript,Html,我使用下面的代码添加文本框值,如果任何文本框没有给定值,它将在total textbox中显示NaN如何避免它 <script> function totalValue() { var a = document.getElementById("a").value; var b = document.getElementById("b").value; var c = document.getElemen

我使用下面的代码添加文本框值,如果任何文本框没有给定值,它将在total textbox中显示NaN如何避免它

 <script>
     function totalValue()
     {
          var a = document.getElementById("a").value;
          var b = document.getElementById("b").value;
          var c = document.getElementById("c").value;   
          var d = parseFloat(a)+ parseFloat(b)+ parseFloat(c);
          document.getElementById("total").value = d;
     }

 </script>

函数totalValue()
{
var a=document.getElementById(“a”).value;
var b=document.getElementById(“b”).value;
var c=document.getElementById(“c”).value;
var d=parseFloat(a)+parseFloat(b)+parseFloat(c);
document.getElementById(“总计”).value=d;
}
试试这个:

 <script>
     function totalValue()
     {
          var a = document.getElementById("a").value;
          var b = document.getElementById("b").value;
          var c = document.getElementById("c").value;   
          var d = parseFloat(a)+ parseFloat(b)+ parseFloat(c);
          document.getElementById("total").value = d;
     }

 </script>
 <script>
     function totalValue()
     {
          var a = document.getElementById("a").value || 0;
          var b = document.getElementById("b").value || 0;
          var c = document.getElementById("c").value || 0;   
          var d = parseFloat(a)+ parseFloat(b)+ parseFloat(c);
          document.getElementById("total").value = d;
     }

 </script>

函数totalValue()
{
var a=document.getElementById(“a”).value | | 0;
var b=document.getElementById(“b”).value | | 0;
var c=document.getElementById(“c”).value | | 0;
var d=parseFloat(a)+parseFloat(b)+parseFloat(c);
document.getElementById(“总计”).value=d;
}
小提琴:


 <script>
     function totalValue()
     {
          var a = document.getElementById("a").value;
          var b = document.getElementById("b").value;
          var c = document.getElementById("c").value;   
          var d = parseFloat(a)+ parseFloat(b)+ parseFloat(c);
          document.getElementById("total").value = d;
     }

 </script>
//检查文本框中的给定文本是数字还是不需要的字符串 filterInt=函数(值) { 如果(/^\-?[0-9]+$/.test(值)) 返回编号(值); 返回NaN; } 函数totalValue() { var a=document.getElementById(“a”).value; var b=document.getElementById(“b”).value; var c=document.getElementById(“c”).value; a=filterInt(a)| | 0;//如果是字符串,则将其转换为Nan,如果是Nan,则将其转换为零 b=过滤器(b)| | 0; c=过滤器(c)| | 0; var d=parseFloat(a)+parseFloat(b)+parseFloat(c); document.getElementById(“总计”).value=d; }

您可以将
0
附加到字符串:

 <script>
     function totalValue()
     {
          var a = document.getElementById("a").value;
          var b = document.getElementById("b").value;
          var c = document.getElementById("c").value;   
          var d = parseFloat(a)+ parseFloat(b)+ parseFloat(c);
          document.getElementById("total").value = d;
     }

 </script>
 <script>
     function totalValue()
     {
          var a = document.getElementById("a").value;
          var b = document.getElementById("b").value;
          var c = document.getElementById("c").value;   
          var d = parseFloat('0' + a)+ parseFloat('0' + b)+ parseFloat('0' + c);
          document.getElementById("total").value = d;
     }

 </script>

函数totalValue()
{
var a=document.getElementById(“a”).value;
var b=document.getElementById(“b”).value;
var c=document.getElementById(“c”).value;
变量d=parseFloat('0'+a)+parseFloat('0'+b)+parseFloat('0'+c);
document.getElementById(“总计”).value=d;
}

你是什么意思?如果没有给出a的值,d只有b和c的和?
parseFloat('0'+a)
,但它不会将这两个加起来,并在NaNthanks将其工作方式调整为无效时给出输出。尝试在任何输入中键入字符串。但是您可以将其更改为
(parseFloat(a)| | 0)
如果任何文本框中都有字符串或字符怎么办?它又回来了NaN@meze,您在这一点上是对的,您的解决方案非常干净、漂亮。我实际上已经回答了“没有给定值”。。