kaktusowyAloes
#naukaprogramowania #javascript
Mirki mam problem. Siedzę od dwóch godzin i nie mogę załapać czemu mi nie działa funkcja deleteTask()
czy mógłby ktoś z Was rzucić okiem i powiedzieć gdzie robię błąd?

Najlepsze jest to, że jeszcze jakiś czas temu mi to działało, ale chciałem dodać funkcję, która pozwoli mi wywoałć $addTask() po wciśnięciu entera, i wtedy się posypało, i od tamtego czasu nie działa ani jedno ani drugie...

JS: https://pastebin.com/EmBd5qe1
HTML: https://pastebin.com/iJVQ6JPT
CSS: https://pastebin.com/HSYKCzKL
0
  • Najlepsze
  • Wszystkie komentarze
soxn
@kaktusowyAloes: jeśli nie chodzi tutaj o to ze kod jest wykomentowany, to zgaduje ze skrypt uruchamia się przed kompletnym załadowaniem się strony.
2
rimyi
@kaktusowyAloes: wrzuć na codesandbox
1
vito199
vito199
@kaktusowyAloes: jak tworzyć nowe zadanko to wtedy musisz przypisać event
1
s.....r
@kaktusowyAloes: W HTML masz wykomentowany ten kawałek kodu z przyciskiem o klasie .delete?
1
vito199
vito199
@kaktusowyAloes:

const deleteArea = document.createElement('button');

deleteArea.innerHTML = '';

deleteArea.classList.add('delete');

deleteArea.addEventListener('click', deleteTask);

toolsArea.appendChild(deleteArea);}
1
kaktusowyAloes
@vito199: dziękuję, działa :)
1
kaktusowyAloes
dziękuję wam wszystkim :D udało się
1
kaktusowyAloes
@kaktusowyAloes: błąd w konsoli: Uncaught TypeError: Cannot read property 'addEventListener' of null
at script.js:50
0
rimyi
@vito199: zauważyłem, dlatego usunąłem :D
@kaktusowyAloes: nie używaj innerHTML, bad practice i generalnie niebezpieczne jeżeli wrzucasz tam dynamiczny html. Jeżeli chcesz już tak robić to stwórz element przez createElement a później go dodaj przez appendChild
0
kaktusowyAloes
@rimyi: dzięki za wskazówkę. Więc czego powinienem użyć zamiast innerhtml?
0
rimyi
Jeżeli chcesz już tak robić to stwórz element przez createElement a później go dodaj przez appendChild


@kaktusowyAloes:
0