Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.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输入字段的值相乘或相加_Javascript_Laravel - Fatal编程技术网

如何将动态javascript输入字段的值相乘或相加

如何将动态javascript输入字段的值相乘或相加,javascript,laravel,Javascript,Laravel,输入字段由javascript生成。无论我生成多少输入字段,我都要选择每个值……这样我就可以使用这些值进行一些计算 <form action="{{ route('addmorePost') }}" method="POST"> <div class="table-responsive"> <span id="result"></span> <table class

输入字段由javascript生成。无论我生成多少输入字段,我都要选择每个值……这样我就可以使用这些值进行一些计算

<form action="{{ route('addmorePost') }}" method="POST">
<div class="table-responsive">
                   <span id="result"></span>

                   <table class="table table-bordered">
                   <thead>
                  <tr>
                      <th width="55%">Sales Representative</th>
                      <th width="15%">Target per day</th>
                      <th width="15%">Monthly day</th>
                      <th width="10%"> <a href="#" class="btn btn-info addRow">+ </a> </th>
                  </tr>
                 </thead>
                 <tbody>
                    <tr> 
                        <td> 
              <input type="text" name="target[]" class="form-control target" id="target" oninput="calc()">
                       </td>

                       <td><span id="sum1" onchange="add()">0</span> </td>

                       <td> <a href="#" class="btn btn-danger remove">- </a> </td>
                      </tr>
                 </tbody>
                 <tfoot>


                    <tr>
                       <th>  
                       </th>
                       <th> Total</th>
                       <th><span id="sumx">0</span> </th> 
                     </tr>

                   </tfoot>


                   <script>                
                      function add() {

                      var ven1 = document.getElementById('sum1').innerHTML;
                      var valuey = document.getElementById('result1').innerHTML || 0; 
                      console.log(ven1);
                      console.log(valuey);
                      document.getElementById('sumx').innerHTML = parseInt(ven1) + parseInt(valuey);

                    }
                   </script>




             </table>

              </button>

            </form> 

这是我试图得到的数值,乘以26,然后在sum1上显示答案的代码

    <script>


    function calc(){       
    var value1 = document.getElementById('target').value || 0;
    document.getElementById('sum1').innerHTML = parseInt(value1 * 26);

    var value2 = document.getElementById('target2').value; 
    document.getElementById('result1').innerHTML = parseInt(value2 * 26);


    var ven1 = document.getElementById('sum1').innerHTML;
    var valuey = document.getElementById('result1').innerHTML || 0; 
    console.log(ven1);
    console.log(valuey);
    document.getElementById("products").disabled = false;
    document.getElementById('sumx').innerHTML = parseInt(ven1) + parseInt(valuey);

    }

    </script>

请帮忙!!!。。。每次调用addRow时,代码中的ID始终为target2,我做错了什么。 要自动更改ID,使用一个保存当前ID的变量并连接字符串,可以使用VARI


谢谢你…我可以这样做…在我像这样增加id的值之后 id=目标“+i+”和跨度

因此,我使用下面的代码手动获取值…这不是最好的选择,但它解决了我的问题,因为我不需要超过三个输入字段


我需要一种方法来自动更改ID target2..这样,当我添加更多输入字段时,值会发生变化,我可以选择每个值并将它们相乘,因为我认为您应该创建一个适当的方法来描述当前的行为,以便人们知道如何帮助。完成后用链接编辑您的问题谢谢。我现在可以通过此代码获取动态ID…ID=目标“+i+”…您能告诉我或共享代码让我乘以每个ID的值吗?请参阅上面的编辑,注意更改为
    <script>


    function calc(){       
    var value1 = document.getElementById('target').value || 0;
    document.getElementById('sum1').innerHTML = parseInt(value1 * 26);

    var value2 = document.getElementById('target2').value; 
    document.getElementById('result1').innerHTML = parseInt(value2 * 26);


    var ven1 = document.getElementById('sum1').innerHTML;
    var valuey = document.getElementById('result1').innerHTML || 0; 
    console.log(ven1);
    console.log(valuey);
    document.getElementById("products").disabled = false;
    document.getElementById('sumx').innerHTML = parseInt(ven1) + parseInt(valuey);

    }

    </script>
$(document).ready(function(){      
  var postURL = "http://localhost/bcwater/public/addmore";
  var i=1; 

  $('.addRow').on('click', function(){
    i++;
    addRow(i);
  });

  function addRow(i){
     var tr = '<tr class="dynamic-added">'+
            '<td>'+
            '</td>'+
            '<td><input type="text" name="target[]" id="target' + i + '" class="form-control" oninput="calc()" /> </td>'+
            '<td><span id="result' + i + '">0</span> </td>'+ //This is modified to attach the current index to result
            '<td> <a href="#" class="btn btn-danger remove">- </a> </td>'+

          '</tr>';
      $('tbody').append(tr);
  }; 

  $('tbody').on('click','.remove', function(){
     $(this).parent().parent().remove();
  });
});
function calc(){       
    var value1 = document.getElementById('target').value || 0;
    document.getElementById('sum1').innerHTML = parseInt(value1 * 26);

    for(var j = 1; j <= i; j++) {
        var value2 = document.getElementById('target' + j).value; 
        document.getElementById('result' + j).innerHTML = parseInt(value2 * 26); // This is to target the result span that corresponds to the input value
    }


    var ven1 = document.getElementById('sum1').innerHTML;
    var valuey = document.getElementById('result1').innerHTML || 0; 
    console.log(ven1);
    console.log(valuey);
    document.getElementById("products").disabled = false;
    document.getElementById('sumx').innerHTML = parseInt(ven1) + parseInt(valuey);

}
        function calc(){     

        var value1 = document.getElementById('target').value || 0;
        document.getElementById('sum1').innerHTML = parseInt(value1 * 26);

        var value2 = document.getElementById('target2').value; 
        document.getElementById('result2').innerHTML = parseInt(value2 * 26);

        document.getElementById("products").disabled = false;


        var value2 = document.getElementById('target3').value; 
        document.getElementById('result3').innerHTML = parseInt(value2 * 26);




        var ven1 = document.getElementById('sum1').innerHTML || 0;
        var valuey = document.getElementById('result2').innerHTML || 0; 

        var valuenew = document.getElementById('result3').innerHTML || 0; 



        document.getElementById('sumx').innerHTML = parseInt(ven1) + parseInt(valuey) + parseInt(valuenew);

        }

        </script>