Получить и суммировать входные значения Dynami c при использовании MaskMoney. js - PullRequest
0 голосов
/ 08 апреля 2020

Мне нужна помощь по сумме значений из массивов на Dynami c input add. Пожалуйста, проверьте этот код -> https://jsfiddle.net/ricardofranco/gaf32kry/8/ - maskMoney применяется, и я использую maskmoney. js в качестве функции. Маска применяется, но она не может суммироваться.

var a = function() {
   $('.value').maskMoney({
            allowNegative: true, 
            thousands:'.', 
            decimal:',', 
            affixesStay: false});    };
$('#add_row').click(function() {

$("#linha").first().clone(true).appendTo("tbody").append("<td data-name='del'><button name='' class='btn btn-danger glyphicon glyphicon-remove row-remove'><span aria-hidden='true' id='row-remove'>-</span></button></td>");   
});

  $("#linha").on('click', '.row-remove' ,function() {
    $(this).closest("#linha").remove();
});

$('.table-primary').on('input', '.value', function(){
var totalSum = 0;
    $('.table-primary .value').each(function(){
        var inputValue = $(this).val();

        if(inputValue){

            totalSum += parseFloat(inputValue);
        }

    });

    $('#total').text(totalSum).innerHTML;

});

Если я удалю функцию maskMoney, она подведет итоги. Пожалуйста, проверьте этот другой код -> https://jsfiddle.net/ricardofranco/sgch8qfa/11/ - маскаMoney. js не применяется.

$('#add_row').click(function() {

$("#linha").first().clone(true).appendTo("tbody").append("<td data-name='del'><button name='' class='btn btn-danger glyphicon glyphicon-remove row-remove'><span aria-hidden='true' id='row-remove'>-</span></button></td>");

});

  $("#linha").on('click', '.row-remove' ,function() {
    $(this).closest("#linha").remove();
});

//sum all values
$('.table-primary').on('input', '.value', function(){

    var totalSum = 0;

    $('.table-primary .value').each(function(){
        var inputValue = $(this).val();

        if(inputValue){
            totalSum += parseFloat(inputValue);
        }
    });
    $('#total').text(totalSum).innerHTML;
});

Как получить значения и сумму, когда маскаMoney. js применяется? Ребята, можете ли вы помочь мне в этом?

1 Ответ

0 голосов
/ 08 апреля 2020


var a =  function() {
   $('.value').maskMoney({allowNegative: true, thousands:'.', decimal:',', affixesStay: false});
};

$('#add_row').click(function() {


$("#linha").first().clone(true).appendTo("tbody").append("<td data-name='del'><button name='' class='btn btn-danger glyphicon glyphicon-remove row-remove'><span aria-hidden='true' id='row-remove'>-</span></button></td>");

});

  $("#linha").on('click', '.row-remove' ,function() {
    $(this).closest("#linha").remove();
});


//sum all values
$('.table-primary').on('keyup', '.value', function(){
    var totalSum = 0;
    $('.table-primary .value').each(function(){
        var inputValue = $(this).maskMoney('unmasked')[0];


        if(inputValue){
            totalSum += parseFloat(inputValue);
        }

    });

    $('#total').text(totalSum).innerHTML;

});
...