将数字数字分配给行并在通货紧缩后返回正确的顺序

时间:2017-10-28 12:09:16

标签: php jquery

我的代码存在一些问题:

  • 首先是行分配号码。它不分配数字 到第一行
  • 其次如何将Discount预分配到0,如果我想要更改,则可以编辑。

我的问题图片如下。

  • 不将数字编号分配给第一行

Doesnt aasinging the numeric number to first row

Doesnt aasinging the numeric number to first row

  • 在删除某行时,它不会以正确的数字顺序自动删除,例如删除2& 4它不会回到123

Disorder Issue

我的jquery代码是 一个

<script type="text/javascript">
        $(document).ready(function() {

         $('#data').DataTable( {
            "scrollY":        "460px",
            "scrollCollapse": true,
            "paging":        true
        } );
    } );



        $(function(){
            $('body').delegate('.discount,.quantity,.price','keyup',function(){
                var tr      =   $(this).parent().parent();  
                var dis     =   tr.find('.discount').val();
                var qty     =   tr.find('.quantity').val();
                var price   =   tr.find('.price').val();
                var total   =   (qty*price) -(dis);
                tr.find('.amount').val(total);
                totals();
            });

        $('.pay').change(function(){
            var pay      =  $(this).val()-0;
            var subtoal  =  $('.subtotal').val()-0;
            $('.payback').val(pay-subtoal);
        }); 

        $('.datavalue').click(function(){
            var id      =$(this).data('id');
            var name    =$(this).data('name');
            var price   =$(this).data('price');
            addrow(id,name,price);
        });

        $('body').delegate('.remove','click',function(){
            var tr = $(this).parent().parent();
            tr.remove();
            totals();
        });
    }); 
        function addrow(id,p,p2)
    {
    $('.count').each(function(idx){
    $("td:first", this).html(idx+1);
});
    var tr = '<tr class= count>'+
                '<td></td>'+
                '<td><input type="text" name="product_name[]" value=" '+ p +' " class="form-control product_name"><input type="hidden" name="product_id[]" value=" '+ id +' " class="form-control product_name"></td>'+
                '<td><input type="text" name="quantity[]" value="1" class="form-control quantity"></td>'+
                '<td><input type="text" name="price[]" value=" '+ p2 +' " class="form-control price"></td>'+
                '<td><input type="text" name="discount[]" class="form-control discount"></td>'+
                '<td><input type="text" name="amount[]" class="form-control amount"></td>'+
                '<td><a href="#" class="remove">Del</a></td>'+
            '</tr>';

            $('.details').append(tr);

    }   

    function totals()
        {
            var tt = 0;
            $('.amount').each(function(e,i){
                var amt = $(this).val()-0;
                tt +=  amt;
            });
            $('.subtotal').val(tt);
        }


          function OpenPopupCenter(pageURL, title, w, h) {
                var left = (screen.width - w) / 2;
                var top = (screen.height - h) / 4;  // for 25% - devide by 4  |  for 33% - devide by 3
                var targetWin = window.open(pageURL, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=' + w + ', height=' + h + ', top=' + top + ', left=' + left);
            } 

    </script>

1 个答案:

答案 0 :(得分:0)

要为您的行编号,您可以使用jQuery each

$('tr').each(function(row_number) {
   $(this).find('td').first().text(row_number + 1);
});

添加或删除行时调用此方法,它将解决您的问题。