Guest User

Untitled

a guest
Dec 18th, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.53 KB | None | 0 0
  1. <div class="container">
  2. <div class="row">
  3. <h3>Produtos</h3>
  4. <table id="details-table" class="table">
  5. <tbody>
  6. <tr>
  7. <th scope="col" class="col-1">Item</th>
  8. <th scope="col" class="col-5">Produto</th>
  9. <th scope="col" class="col-1">Quantidade</th>
  10. <th scope="col" class="col-2">Preço</th>
  11. <th scope="col" class="col-3">Total</th>
  12. </tr>
  13. </tbody>
  14. </table>
  15. </div>
  16. <!-- #detail-details -->
  17. <div class="form-group">
  18. <button class="btn btn-primary" type="button" id="btn-add-item">Novo Item</button>
  19. <input class="btn btn-success" type="submit" value="Salvar">
  20. </div>
  21. </div>
  22.  
  23. (function ($) {
  24.  
  25. var counter = 0;
  26.  
  27. addRow = function () {
  28.  
  29. var table = $('#details-table');
  30. var input = null;
  31.  
  32. var row = $('<tr class="linha">');
  33. var cols = [];
  34.  
  35. counter++;
  36.  
  37. // Coluna 1 - Item
  38. input = $('<input>').addClass('form-control').attr('name', 'item' + counter + '').val(counter).attr('disabled', 'disabled');
  39. cols.push(
  40. $('<td>').append(
  41. $('<div>').addClass('form-group').append(input)
  42. )
  43. );
  44.  
  45. // Coluna 2 - Produto
  46. input = $('<input>').addClass('form-control').attr('name', 'produto' + counter + '');
  47. cols.push(
  48. $('<td>').append(
  49. $('<div>').addClass('form-group').append(input)
  50. )
  51. );
  52.  
  53. // Coluna 3 - Quantidade
  54. input = $('<input>').addClass('form-control').attr('name', 'quantidade' + counter + '');
  55. cols.push(
  56. $('<td>').append(
  57. $('<div>').addClass('form-group').append(input)
  58. )
  59. );
  60.  
  61. // Coluna 4 - Preço
  62. input = $('<input>').addClass('form-control').attr('name', 'preco' + counter + '');
  63. cols.push(
  64. $('<td>').append(
  65. $('<div>').addClass('form-group').append(input)
  66. )
  67. );
  68.  
  69. // Coluna 5 - Total
  70. input = $('<input>').addClass('form-control').addClass('total').attr('name', 'total' + counter + '').val(totalPreco).attr('disabled', 'disabled');
  71. cols.push(
  72. $('<td>').append(
  73. $('<div>').addClass('form-group').append(input)
  74. )
  75. );
  76.  
  77. // Button Remove
  78. cols.push(
  79. $('<td>').addClass('actions').append(
  80. $('<button>').addClass('btn btn-danger btn-remove-item').html('&times;').attr('type', 'button').on('click', removeRow)
  81. )
  82. );
  83.  
  84. row.append(cols);
  85. table.append(row);
  86.  
  87. return false;
  88. }
  89.  
  90. totalPreco = function () {
  91. $('input[name="total'+counter+'"]').on('keyup', function(){
  92. var quantidade = $('input[name="quantidade'+counter+'"]').val();
  93. var preco = $('input[name="preco'+counter+'"]').val()
  94. var total = $('input[name="total'+counter+'"]');
  95. var precoTotal = parseFloat(quantidade) * parseFloat(preco);
  96. return precoTotal;
  97. });
  98. }
  99.  
  100. removeRow = function () {
  101.  
  102. $(this).closest('.linha').remove();
  103. return false;
  104. }
  105.  
  106. $('#btn-add-item').click(addRow);
  107. })(jQuery);
Add Comment
Please, Sign In to add comment