Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.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替换为0_Javascript - Fatal编程技术网

Javascript 订单-将NaN替换为0

Javascript 订单-将NaN替换为0,javascript,Javascript,我需要用javascript创建一个订单表单,并且必须用“0”填充一些空字段,这样在最后的汇总中就不会得到NaN 问题是,该订单是一个typo3模板,所以我不能提前填写字段。我的想法是将最终求和时的NaN字段转换为整数0,并保留客户更改的值 因此,完整的代码如下所示,但我认为唯一有问题的部分是add函数的末尾: <pre>var arrPRICES = ["0", "1.99", "2.99", "3.99", "4.99", "5.99", "6.99", "7.99", "8.9

我需要用javascript创建一个订单表单,并且必须用“0”填充一些空字段,这样在最后的汇总中就不会得到NaN

问题是,该订单是一个typo3模板,所以我不能提前填写字段。我的想法是将最终求和时的NaN字段转换为整数0,并保留客户更改的值

因此,完整的代码如下所示,但我认为唯一有问题的部分是add函数的末尾:

<pre>var arrPRICES = ["0", "1.99", "2.99", "3.99", "4.99", "5.99", "6.99", "7.99", "8.99", "9.99"];
function changeInput(objSel, strName){
objSel.form.elements[strName].value = arrPRICES[objSel.selectedIndex];
}


 function cal() {
  var ep01 = parseFloat(document.getElementById("ep01").value);
  var stk01 = parseFloat(document.getElementById("stk01").value);
  var gb01 = parseFloat(document.getElementById("gp01").value = stk01 * ep01).toFixed(2);
  document.getElementById("gp01").value = gb01;
}

 function calc() {
  var ep02 = parseFloat(document.getElementById("ep02").value);
  var stk02 = parseFloat(document.getElementById("stk02").value);
  var gb02 = parseFloat(document.getElementById("gp02").value = stk02 * ep02).toFixed(2);
  document.getElementById("gp02").value = gb02;
}

 function calcu() {
  var ep03 = parseFloat(document.getElementById("ep03").value);
  var stk03 = parseFloat(document.getElementById("stk03").value);
  var gb03 = parseFloat(document.getElementById("gp03").value = stk03 * ep03).toFixed(2);
  document.getElementById("gp03").value = gb03;
 }

  function calcul() {
  var ep04 = parseFloat(document.getElementById("ep04").value);
  var stk04 = parseFloat(document.getElementById("stk04").value);
  var gb04 = parseFloat(document.getElementById("gp04").value = stk04 * ep04).toFixed(2);
  document.getElementById("gp04").value = gb04;
 }

  function calcula() {
  var ep05 = parseFloat(document.getElementById("ep05").value);
  var stk05 = parseFloat(document.getElementById("stk05").value);
  var gb05 = parseFloat(document.getElementById("gp05").value = stk05 * ep05).toFixed(2);
  document.getElementById("gp05").value = gb05;
 }

 function calculat() {
  var ep06 = parseFloat(document.getElementById("ep06").value);
  var stk06 = parseFloat(document.getElementById("stk06").value);
  var gb06 = parseFloat(document.getElementById("gp06").value = stk06 * ep06).toFixed(2);
  document.getElementById("gp06").value = gb06;
 }

 function calculati() {
  var ep07 = parseFloat(document.getElementById("ep07").value);
  var stk07 = parseFloat(document.getElementById("stk07").value);
  var gb07 = parseFloat(document.getElementById("gp07").value = stk07 * ep07).toFixed(2);
  document.getElementById("gp07").value = gb07;
 }

  function calculatio() {
  var ep08 = parseFloat(document.getElementById("ep08").value);
  var stk08 = parseFloat(document.getElementById("stk08").value);
  var gb08 = parseFloat(document.getElementById("gp08").value = stk08 * ep08).toFixed(2);
  document.getElementById("gp08").value = gb08;
 }

 function calculation() {
  var ep09 = parseFloat(document.getElementById("ep09").value);
  var stk09 = parseFloat(document.getElementById("stk09").value);
  var gb09 = parseFloat(document.getElementById("gp09").value = stk09 * ep09).toFixed(2);
  document.getElementById("gp09").value = gb09;
 }

function add(gp01,gp02,gp03,gp04,sum1,summe01) {
  var gp01 = parseFloat(document.getElementById("gp01").value);
  if (parseFloat(document.getElementById("gp02").value = ""))
    var gp02 = parseFloat(document.getElementById("gp02").value = '0');
    } else {
    parseFloat(document.getElementById("gp02").value);
    }
  if (parseFloat(document.getElementById("gp03").value = ""))
    var gp03 = parseFloat(document.getElementById("gp03").value = '0');
    } else {
    var gp03 = parseFloat(document.getElementById("gp03").value);
    }
if (parseFloat(document.getElementById("gp04").value = ""))
    var gp04 = parseFloat(document.getElementById("gp04").value = '0');
    } else {
    var gp04 = parseFloat(document.getElementById("gp04").value);
    }
if (parseFloat(document.getElementById("gp05").value = ""))
    var gp05 = parseFloat(document.getElementById("gp05").value = '0');
    } else {
    var gp05 = parseFloat(document.getElementById("gp05").value);
    }
if (parseFloat(document.getElementById("gp06").value = ""))
    var gp06 = parseFloat(document.getElementById("gp06").value = '0');
    } else {
    var gp06 = parseFloat(document.getElementById("gp06").value);
    }
if (parseFloat(document.getElementById("gp07").value = ""))
    var gp07 = parseFloat(document.getElementById("gp07").value = '0');
    } else {
    var gp07 = parseFloat(document.getElementById("gp07").value);
    }
if (parseFloat(document.getElementById("gp08").value = ""))
    var gp08 = parseFloat(document.getElementById("gp08").value = '0');
    } else {
    var gp08 = parseFloat(document.getElementById("gp08").value);
    }
if (parseFloat(document.getElementById("gp09").value = ""))
    var gp09 = parseFloat(document.getElementById("gp09").value = '0');
    } else {
    var gp09 = parseFloat(document.getElementById("gp09").value);
    }
  var sum1 = parseFloat(document.getElementById("summe01").value = gp01 + gp02 + gp03 + gp04 + gp05 + gp06 + gp07 + gp08 + gp09).toFixed(2);
  document.getElementById("summe01").value = sum1;
}
</pre>
function parse(str) {
    return str == "" ? 0 : parseFloat(str);
}
var arrPRICES=[“0”、“1.99”、“2.99”、“3.99”、“4.99”、“5.99”、“6.99”、“7.99”、“8.99”、“9.99”];
函数changeInput(objSel、strName){
objSel.form.elements[strName].value=arrPRICES[objSel.selectedIndex];
}
函数cal(){
var ep01=parseFloat(document.getElementById(“ep01”).value);
var stk01=parseFloat(document.getElementById(“stk01”).value);
var gb01=parseFloat(document.getElementById(“gp01”).value=stk01*ep01.toFixed(2);
document.getElementById(“gp01”).value=gb01;
}
函数计算(){
var ep02=parseFloat(document.getElementById(“ep02”).value);
var stk02=parseFloat(document.getElementById(“stk02”).value);
var gb02=parseFloat(document.getElementById(“gp02”).value=stk02*ep02.toFixed(2);
document.getElementById(“gp02”).value=gb02;
}
函数计算(){
var ep03=parseFloat(document.getElementById(“ep03”).value);
var stk03=parseFloat(document.getElementById(“stk03”).value);
var gb03=parseFloat(document.getElementById(“gp03”).value=stk03*ep03.toFixed(2);
document.getElementById(“gp03”).value=gb03;
}
函数计算(){
var ep04=parseFloat(document.getElementById(“ep04”).value);
var stk04=parseFloat(document.getElementById(“stk04”).value);
var gb04=parseFloat(document.getElementById(“gp04”).value=stk04*ep04.toFixed(2);
document.getElementById(“gp04”).value=gb04;
}
函数计算(){
var ep05=parseFloat(document.getElementById(“ep05”).value);
var stk05=parseFloat(document.getElementById(“stk05”).value);
var gb05=parseFloat(document.getElementById(“gp05”).value=stk05*ep05.toFixed(2);
document.getElementById(“gp05”).value=gb05;
}
函数calculat(){
var ep06=parseFloat(document.getElementById(“ep06”).value);
var stk06=parseFloat(document.getElementById(“stk06”).value);
var gb06=parseFloat(document.getElementById(“gp06”).value=stk06*ep06.toFixed(2);
document.getElementById(“gp06”).value=gb06;
}
函数计算(){
var ep07=parseFloat(document.getElementById(“ep07”).value);
var stk07=parseFloat(document.getElementById(“stk07”).value);
var gb07=parseFloat(document.getElementById(“gp07”).value=stk07*ep07.toFixed(2);
document.getElementById(“gp07”).value=gb07;
}
函数计算(){
var ep08=parseFloat(document.getElementById(“ep08”).value);
var stk08=parseFloat(document.getElementById(“stk08”).value);
var gb08=parseFloat(document.getElementById(“gp08”).value=stk08*ep08.toFixed(2);
document.getElementById(“gp08”).value=gb08;
}
函数计算(){
var ep09=parseFloat(document.getElementById(“ep09”).value);
var stk09=parseFloat(document.getElementById(“stk09”).value);
var gb09=parseFloat(document.getElementById(“gp09”).value=stk09*ep09.toFixed(2);
document.getElementById(“gp09”).value=gb09;
}
函数添加(gp01、gp02、gp03、gp04、sum1、SUME01){
var gp01=parseFloat(document.getElementById(“gp01”).value);
if(parseFloat(document.getElementById(“gp02”).value=”“)
var gp02=parseFloat(document.getElementById(“gp02”).value='0');
}否则{
parseFloat(document.getElementById(“gp02”).value);
}
if(parseFloat(document.getElementById(“gp03”).value=”“)
var gp03=parseFloat(document.getElementById(“gp03”).value='0');
}否则{
var gp03=parseFloat(document.getElementById(“gp03”).value);
}
if(parseFloat(document.getElementById(“gp04”).value=”“)
var gp04=parseFloat(document.getElementById(“gp04”).value='0');
}否则{
var gp04=parseFloat(document.getElementById(“gp04”).value);
}
if(parseFloat(document.getElementById(“gp05”).value=”“)
var gp05=parseFloat(document.getElementById(“gp05”).value='0');
}否则{
var gp05=parseFloat(document.getElementById(“gp05”).value);
}
if(parseFloat(document.getElementById(“gp06”).value=”“)
var gp06=parseFloat(document.getElementById(“gp06”).value='0');
}否则{
var gp06=parseFloat(document.getElementById(“gp06”).value);
}
if(parseFloat(document.getElementById(“gp07”).value=”“)
var gp07=parseFloat(document.getElementById(“gp07”).value='0');
}否则{
var gp07=parseFloat(document.getElementById(“gp07”).value);
}
if(parseFloat(document.getElementById(“gp08”).value=”“)
var gp08=parseFloat(document.getElementById(“gp08”).value='0');
}否则{
var gp08=parseFloat(document.getElementById(“gp08”).value);
}
if(parseFloat(document.getElementById(“gp09”).value=”“)
var gp09=parseFloat(document.getElementById(“gp09”).value='0');
}否则{
var gp09=parseFloat(document.getElementById(“gp09”).value);
}
var sum1=parseFloat(document.getElementById(“summe1”)。value=gp01+gp02+gp03+gp04+gp05+gp06+gp07+gp08+gp09)。toFixed(2);
document.getElementById(“summe1”).value=sum1;
}
在上述版本之前,我插入了以下add函数,但计算仅在所有字段都输入值时才有效:


函数添加(gp01、gp02、gp03、gp04、sum1、SUME01){
var gp01=parseFloat(document.getElementById(“gp01”).value);
var gp02=parseFloat(document.getElementById(“gp02”).value);
var gp03=parseFloat(document.getElementById(“gp03”).value);
var gp04=parseFloat(document.getElementById(“gp04”).value);
var gp05=parseFloat(document.getElementById(“gp05”).value);
var gp06=parseFloat(document.getElementById
function parse(str) {
    return str == "" ? 0 : parseFloat(str);
}
var ep01 = parse(document.getElementById("ep01").value);
var ep01 = parseFloat(document.getElementById("ep01").value) || 0;
function parse(str) {
    return parseFloat(str) || 0;
}
<form>
  <fieldset name="set0">
    <input name="i0">0<br>
    <input name="i1">1<br>
    <input name="i2">2<br>
    <input name="i3">3<br>
  </fieldset>
  <input type="text" readonly name="total"><br>
  <input type="button" onclick="calcTotal(this);" value="Get total">
</form>

<script>
  function calcTotal(el) {
    var form = el.form;
    var set = form.set0.elements;
    var total = 0;

    for (var i=0, iLen=set.length; i<iLen; i++) {

      // Borrowing from TJ's answer
      total += parseFloat(set[i].value) || 0;
    }
    form.total.value = total;
  }
</script>