Advertisement
Guest User

Untitled

a guest
Apr 26th, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.37 KB | None | 0 0
  1. $(document).ready(function () {
  2. /* Adat beolvasása és megjelenítés */
  3. readToTable();
  4. /* Mentés gombal adat felvitel */
  5. $('body').on('click', '#save', function () {
  6. var firstNameInput = $('#firstName');
  7. var lastNameInput = $('#lastName');
  8. var hiba = $('#hiba');
  9.  
  10. if (firstNameInput.val() == "" || lastNameInput.val() == "") {
  11. hiba.html("A mezők nem lettek kitöltve.");
  12. hiba.show();
  13. } else if (firstNameInput.val().length < 3 || lastNameInput.val().length < 3) {
  14. hiba.html("Legalább 3 karakter megadása kötelező.");
  15. hiba.show();
  16. } else {
  17. hiba.hide();
  18. var stored = JSON.parse(localStorage.getItem('names'));
  19. if (stored === null) {
  20. stored = {
  21. items: [
  22. {
  23. id: 1,
  24. firstName: firstNameInput.val(),
  25. lastName: lastNameInput.val()
  26. }
  27. ]
  28. };
  29. } else {
  30. stored.items.push({
  31. id: stored.items[stored.items.length - 1].id + 1,
  32. firstName: firstNameInput.val(),
  33. lastName: lastNameInput.val()
  34. });
  35. }
  36. localStorage.setItem('names', JSON.stringify(stored));
  37.  
  38. readToTable();
  39. }
  40. });
  41. /* Minden törlés gombal adat ürítés */
  42. var body = $('body');
  43.  
  44. body.on('click', '#clearAll', function () {
  45. localStorage.clear();
  46. readToTable();
  47. });
  48.  
  49. //Darabonként való törlés
  50. body.on('click', '.singleDeleteButton', function () {
  51. var deleteitem = $(this).attr('data-id');
  52. var stored = JSON.parse(localStorage.getItem('names'));
  53. var i = 0;
  54. $.each(stored.items, function () {
  55. if (parseInt(this.id) === parseInt(deleteitem)) {
  56. stored.items.splice(i, 1);
  57. }
  58. i++;
  59. });
  60.  
  61. if (stored.items.length > 0) {
  62. localStorage.setItem('names', JSON.stringify(stored));
  63. } else {
  64. localStorage.clear();
  65. }
  66. $(this).closest('tr').remove();
  67. });
  68.  
  69. //Darabonként szerkesztés
  70. body.on('click', '.singleEditButton', function () {
  71. var edited = $(this).attr('data-id');
  72. var stored = JSON.parse(localStorage.getItem('names'));
  73. $.each(stored.items, function () {
  74. if (parseInt(this.id) === parseInt(edited)) {
  75. $('#firstName').val(this.firstName);
  76. $('#lastName').val(this.lastName);
  77. var saveButton = $('#save');
  78. saveButton.attr('data-id', this.id).text('Szerkesztés mentése');
  79. $('#cancelEdit').remove();
  80. saveButton.parent().append('<button id="cancelEdit" class="btn btn-warning">' +
  81. 'Visszavonás' + '</button>');
  82.  
  83. }
  84. });
  85. });
  86.  
  87. body.on('click', '#cancelEdit', function () {
  88. $('#save').text('Mentés').removeAttr('data-id');
  89. $('#firstName').val(" ");
  90. $('#lastName').val(" ");
  91. $(this).remove();
  92. });
  93. });
  94.  
  95. /* megjelenítést küldő funkció */
  96. function readToTable() {
  97. var stored = JSON.parse(localStorage.getItem('names'));
  98. var table = $('#dataTable > tbody');
  99. table.empty();
  100. if (stored == null) {
  101. table.append('<tr><td colspan="3"' +
  102. 'Jelenleg nincs elérhető elem' +
  103. '</td></tr>'
  104. );
  105. } else {
  106. $.each(stored.items, function () {
  107. table.append('<tr>' +
  108. '<td>' +
  109. this.id +
  110. '</td>' +
  111. '<td>' +
  112. this.firstName +
  113. '</td>' +
  114. '<td>' +
  115. this.lastName +
  116. '</td>' +
  117. '<td>' +
  118. '<button class="btn btn-danger singleDeleteButton" data-id="' + this.id + '">' +
  119. '-' + '</button>' +
  120. '</td>' +
  121. '<td>' +
  122. '<button class="btn btn-info singleEditButton" data-id="' + this.id + '">' +
  123. '+' + '</button>' +
  124. '</td>' +
  125. '</tr>'
  126. );
  127. });
  128. }
  129. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement