Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     // button '+'
  2.     document.getElementById('add_button').onclick = function() {
  3.         document.getElementById('ok_button').style.display = 'block';
  4.         document.getElementById('add_button').style.display = 'none';
  5.         document.getElementById('input_block').style.display = 'block';
  6.     }
  7.  
  8.     // button '✔'
  9.     document.getElementById('ok_button').onclick = function() {
  10.         var input_text = document.getElementsByTagName("input")[0].value;
  11.         if (input_text) {
  12.             var new_data = document.createElement('div')
  13.             new_data.className = 'row data'
  14.             new_data.innerHTML = '<div class="cell"><span>' + input_text + '</span><img src="icon_edit.png" class="edit_button"><img src="icon_delete.png" class="remove_button"></div>'
  15.             document.getElementsByClassName('data_table')[0].appendChild(new_data)
  16.             document.getElementById('ok_button').style.display = 'none';
  17.             document.getElementById('add_button').style.display = 'block';
  18.             document.getElementById('input_block').style.display = 'none';
  19.         }
  20.     }
  21.  
  22.     // function of deleting a row
  23.     function remove_row() {
  24.         this.parentElement.parentElement.remove();
  25.     }
  26.  
  27.     // row editing function
  28.     function edit_row() {
  29.         row = this.parentElement.parentElement
  30.         row.style.background = '#e9e9e9'
  31.  
  32.     }
  33.  
  34.     // update tracking function
  35.     var observer = new MutationObserver(function(mutations) {
  36.         mutations.forEach(function(mutation) {
  37.             if (mutation.addedNodes.length) {
  38.                 [btn_edit, btn_remove] = mutation.addedNodes[0].getElementsByTagName('img')
  39.                 btn_edit.onclick = edit_row
  40.                 btn_remove.onclick = remove_row }});});
  41.     observer.observe(document.getElementsByClassName('data_table')[0], {childList: true})
  42.  
  43.     // hang action on click
  44.     var el = document.querySelectorAll(".remove_button");
  45.     for (var i = 0; i < el.length; i++) {
  46.         el[i].onclick = remove_row
  47.     }
  48.  
  49.     var el = document.querySelectorAll(".edit_button");
  50.     for (var i = 0; i < el.length; i++) {
  51.         el[i].onclick = edit_row
  52.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement