Todorov_Stanimir

01. Christmas Gifts Delivery JS Advanced Retake Exam - 10 De

Dec 10th, 2019
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solution() {
  2.     const [addSection, listSection, sendSection, discartedSecction] = Array.from(document.getElementsByClassName('card'))
  3.     const inputEl = addSection.querySelector('input')
  4.     const addBtn = addSection.querySelector('button')
  5.  
  6.  
  7.     addBtn.addEventListener('click', function (event) {
  8.         if (inputEl.value !== '') {
  9.             let textGift = inputEl.value;
  10.             let liEl = document.createElement('li');
  11.             let sendBtn = document.createElement('button');
  12.             let discardBtn = document.createElement('button');
  13.  
  14.             liEl.setAttribute('class', 'gift');
  15.             liEl.textContent = textGift;
  16.             sendBtn.setAttribute('id', 'sendButton');
  17.             sendBtn.textContent = 'Send';
  18.             sendBtn.addEventListener('click', send)
  19.             discardBtn.setAttribute('id', 'discardButton');
  20.             discardBtn.textContent = 'Discard';
  21.             discardBtn.addEventListener('click', discard);
  22.             liEl.appendChild(sendBtn);
  23.             liEl.appendChild(discardBtn);
  24.  
  25.             listSection.querySelector('ul').appendChild(liEl);
  26.  
  27.             let liiEl = Array.from(listSection.querySelector('ul').querySelectorAll('li')).sort((a, b) => a.textContent.localeCompare(b.textContent));
  28.  
  29.             listSection.querySelector('ul').innerHTML = '';
  30.  
  31.             liiEl.forEach(element => { listSection.querySelector('ul').appendChild(element) });
  32.             inputEl.value = '';
  33.         }
  34.  
  35.         function send(event) {
  36.             const present = event.target.parentNode.firstChild.textContent;
  37.             let liEl = document.createElement('li');
  38.             liEl.setAttribute('class', 'gift');
  39.             liEl.textContent = present;
  40.  
  41.             sendSection.querySelector('ul').appendChild(liEl);
  42.             event.target.parentNode.remove();
  43.         }
  44.  
  45.         function discard(event) {
  46.             const present = event.target.parentNode.firstChild.textContent;
  47.  
  48.             let liEl = document.createElement('li');
  49.             liEl.setAttribute('class', 'gift');
  50.             liEl.textContent = present;
  51.  
  52.             discartedSecction.querySelector('ul').appendChild(liEl);
  53.             event.target.parentNode.remove();
  54.         }
  55.     })
  56. }
Add Comment
Please, Sign In to add comment