Это вопрос из 2 частей. Первая часть - как вы используете .preventDefault () в том, как я вызываю функцию?
HTML:
<input type="hidden" name="_csrf" value="<%= csrfToken %>">
<a href="#" onclick="deleteItem(this)" class="button gray delete" data-id="<%= products._id %>"><i class="sl sl-icon-close"></i> Delete</a>
JavaScript:
const deleteItem = btn => {
const productId = btn.dataset.id;
const csrf = btn.parentNode.querySelector("[name=_csrf").value;
const pendingLi = btn.closest("li");
FreezeUI({ selector: ".dashboard-list-box", text: "Deleting" });
axios
.delete("/account/delete/" + productId, {
headers: {
"csrf-token": csrf
}
})
.then(response => {
UnFreezeUI();
showSuccess(response);
fadeOut(pendingLi, "remove");
})
.catch(error => {
showError(error);
});
};
Так как у меня здесь нет такого события, как:
document.body.addEventListener("click", e => {
как мне использовать e.preventDefault ()?
ЧАСТЬ 2 ВОПРОС:
Какой был бы лучший способ сделать это? Как у меня с кнопкой на самом деле, имеющей onclick()
или для добавления прослушивателя событий в мой файл scripts.js или нижний колонтитул? т.е.: document.body.addEventListener("click", e => {