Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.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 jQuery计算乘法表单输入字段_Javascript_Jquery_Html_Css_Forms - Fatal编程技术网

Javascript jQuery计算乘法表单输入字段

Javascript jQuery计算乘法表单输入字段,javascript,jquery,html,css,forms,Javascript,Jquery,Html,Css,Forms,我对事件更改上的计算乘法表单字段有疑问。 对新表单字段form modila的计算效果很好。如果单击img-X,则必须删除表单字段,并且在删除该字段后,必须重新计算所有字段以获得新结果。 问题在于我的标签在ADE表格中,我有类为pdv的文本,该字段必须用两个值的和计算kolicina*cijena,我的意思是三个字段的计算给出输出结果。 我将在下面的代码中提供更好的解释,并将详细解释 html 我的jQuery代码看起来是这样的:这段代码有效 $(".prod_go input&quo

我对事件更改上的计算乘法表单字段有疑问。 对新表单字段form modila的计算效果很好。如果单击img-X,则必须删除表单字段,并且在删除该字段后,必须重新计算所有字段以获得新结果。 问题在于我的
标签在ADE表格中,我有类为pdv的文本,该字段必须用两个值的和计算kolicina*cijena,我的意思是三个字段的计算给出输出结果。 我将在下面的代码中提供更好的解释,并将详细解释

html 我的jQuery代码看起来是这样的:这段代码有效

$(".prod_go input").keyup(multInputs);

                    $(".remove_element").click(function() {
                        $(this).parent().parent().remove();
                        multInputs();
                    });

                       function multInputs() {
                           var mult = 0;
                           var sa_popust_uk = 0;

                           var pdv_25 = 0;
                           var pdv_13 = 0;
                           var pdv_5 = 0;
                           // for each row:
                           $("tr.opa").each(function () {
                               // get the values from this row:

                               var $kolicina = $('.kolicina', this).val();
                               var $cijena =   $('.cijena', this).val();
                               var $popust =   $('.popust', this).val();

                               var $total = ($kolicina * 1) * ($cijena * 1);
                               var $total_popus = ($kolicina * 1) * ($cijena * 1) * (($popust * 1)/100);

                                /*Porez*/



                               var value1 =Number($(this).closest('tr.opa').find('td[class=pdv]').text().replace(/[%]/g, ""));

                               if (value1 === 25){

                                    var kaos = ($kolicina * 1) * ($cijena * 1) * (0.25 * 1);
                                    pdv_25 +=kaos;
                               }
                               if (value1 === 13){

                                    var kaos = ($kolicina * 1) * ($cijena * 1) * (0.13 * 1);
                                    pdv_13 +=kaos;
                               }
                               if (value1 === 5){

                                    var kaos = ($kolicina * 1) * ($cijena * 1) * (0.05 * 1);
                                    pdv_5 +=kaos;
                               }


                               // set total for the row
                               //$('.sum').text($total);
                               mult += $total;
                               sa_popust_uk += $total_popus;

                           });
                            $(".popust_all").text(mult-sa_popust_uk.toFixed(2)+' kn');
                            $('.sum').text(mult.toFixed(2)+' kn');
                            $('.popust_count').text(sa_popust_uk.toFixed(2)+' kn');

                           /*Append PDV to page*/
                            $('.pdv_25').text(pdv_25.toFixed(2)+' kn');
                            $('.pdv_13').text(pdv_13.toFixed(2)+' kn');
                            $('.pdv_5').text(pdv_5.toFixed(2)+' kn');

                           $('.sum_od_all').text((mult+pdv_25+pdv_13+pdv_5).toFixed(2)+' kn');

                           console.log('PDV 25:'+ pdv_25+' PDV 13:'+ pdv_13+' PDV 5:'+ pdv_5);

                           //$(".sum_od_all").text(mult);
                       }


            });
如果您能看一看并给我一些关于此表单计算的建议。

我还没有完全理解(首先,您需要在跨度值中输入什么),因此我得到的是:


我现在已经正确地替换了它@Roko C.BuljanThak谢谢你,我已经解决了这个问题,我会更新我的代码。而不是你@Razorphyn
<span><a class="sum">0 </a></span>
<span><a class="popust_count">0 </a></span>
<span><a class="popust_all">0 </a></span>
<span><a class="sum">0 </a></span>
<span>PDV 25%: <a class ="pdv_25">0 </a> | PDV 13%: <a class="pdv_13">0 </a> | PDV 5%: <a class="pdv_5">0 </a></span>
$(".prod_go input").keyup(multInputs);

                    $(".remove_element").click(function() {
                        $(this).parent().parent().remove();
                        multInputs();
                    });

                       function multInputs() {
                           var mult = 0;
                           var sa_popust_uk = 0;

                           var pdv_25 = 0;
                           var pdv_13 = 0;
                           var pdv_5 = 0;
                           // for each row:
                           $("tr.opa").each(function () {
                               // get the values from this row:

                               var $kolicina = $('.kolicina', this).val();
                               var $cijena =   $('.cijena', this).val();
                               var $popust =   $('.popust', this).val();

                               var $total = ($kolicina * 1) * ($cijena * 1);
                               var $total_popus = ($kolicina * 1) * ($cijena * 1) * (($popust * 1)/100);

                                /*Porez*/



                               var value1 =Number($(this).closest('tr.opa').find('td[class=pdv]').text().replace(/[%]/g, ""));

                               if (value1 === 25){

                                    var kaos = ($kolicina * 1) * ($cijena * 1) * (0.25 * 1);
                                    pdv_25 +=kaos;
                               }
                               if (value1 === 13){

                                    var kaos = ($kolicina * 1) * ($cijena * 1) * (0.13 * 1);
                                    pdv_13 +=kaos;
                               }
                               if (value1 === 5){

                                    var kaos = ($kolicina * 1) * ($cijena * 1) * (0.05 * 1);
                                    pdv_5 +=kaos;
                               }


                               // set total for the row
                               //$('.sum').text($total);
                               mult += $total;
                               sa_popust_uk += $total_popus;

                           });
                            $(".popust_all").text(mult-sa_popust_uk.toFixed(2)+' kn');
                            $('.sum').text(mult.toFixed(2)+' kn');
                            $('.popust_count').text(sa_popust_uk.toFixed(2)+' kn');

                           /*Append PDV to page*/
                            $('.pdv_25').text(pdv_25.toFixed(2)+' kn');
                            $('.pdv_13').text(pdv_13.toFixed(2)+' kn');
                            $('.pdv_5').text(pdv_5.toFixed(2)+' kn');

                           $('.sum_od_all').text((mult+pdv_25+pdv_13+pdv_5).toFixed(2)+' kn');

                           console.log('PDV 25:'+ pdv_25+' PDV 13:'+ pdv_13+' PDV 5:'+ pdv_5);

                           //$(".sum_od_all").text(mult);
                       }


            });
$(".prod_go").on('input','input',multInputs);

function multInputs() {
    var mult = 0;
    var sa_popust_uk = 0;

    $("tr.opa").each(function () {
        var $kolicina = $('.kolicina', this).val(),
            $cijena = $('.cijena', this).val(),
            $popust = $('.popust', this).val(),
            $total = ($kolicina * 1) * ($cijena * 1),
            $total_popus = ($kolicina * 1) * ($cijena * 1) * (($popust * 1) / 100);

        //Forge the class name of the span: <td class="pdv">25%</td> becomes pdv_25
        var $pdv_span = 'pdv_'+($('.pdv', this).text().replace('%','')).trim();
        console.log($pdv_span);

        mult += $total;
        sa_popust_uk += $total_popus;
        //Append value to the relative span value
        $('.'+$pdv_span).text(mult);
    });
    $(".popust_all").text(mult - sa_popust_uk.toFixed(2) + ' kn');
    $('.sum').text(mult.toFixed(2) + ' kn');
    $('.popust_count').text(sa_popust_uk.toFixed(2) + ' kn');

}
    $(".prod_go").on('input', 'input', multInputs);

function multInputs() {
    var mult = 0,
        mult5 = 0,
        mult13 = 0,
        mult25 = 0,
        sa_popust_uk = 0;

    $("tr.opa").each(function () {
        var $kolicina = $('.kolicina', this).val(),
            $cijena = $('.cijena', this).val(),
            $popust = $('.popust', this).val(),
            $total = ($kolicina * 1) * ($cijena * 1),
            $total_popus = ($kolicina * 1) * ($cijena * 1) * (($popust * 1) / 100);

        //Forge the class name of the span: <td class="pdv">25%</td> becomes pdv_25
        var $pdv_span = ($('.pdv', this).text().replace('%', '')).trim();
        console.log($pdv_span);
        switch ($pdv_span) {
            case '5':
                mult5 += $total;
                $('.pdv_' + $pdv_span).text(mult5);
                break;
            case '13':
                mult13 += $total;
                $('.pdv_' + $pdv_span).text(mult13);
                break;
            case '25':
                mult25 += $total;
                $('.pdv_' + $pdv_span).text(mult25);
                break;
            default:
                break;
        }
        sa_popust_uk += $total_popus;
    });
    mult = mult5 + mult13 + mult25;
    $(".popust_all").text(mult - sa_popust_uk.toFixed(2) + ' kn');
    $('.sum').text(mult.toFixed(2) + ' kn');
    $('.popust_count').text(sa_popust_uk.toFixed(2) + ' kn');

}