fix edycji ajax
This commit is contained in:
parent
1ed40e96dd
commit
3d5189d9e3
@ -69,16 +69,23 @@
|
|||||||
{% block extra_js %}
|
{% block extra_js %}
|
||||||
{{ super() }}
|
{{ super() }}
|
||||||
<script>
|
<script>
|
||||||
document.addEventListener("DOMContentLoaded", function() {
|
document.addEventListener("DOMContentLoaded", function() {
|
||||||
// Logika edycji w tabeli
|
// Logika edycji w tabeli
|
||||||
document.querySelectorAll(".edit-btn").forEach(button => {
|
document.querySelectorAll(".edit-btn").forEach(button => {
|
||||||
button.addEventListener("click", function() {
|
button.addEventListener("click", function(event) {
|
||||||
|
event.preventDefault(); // ✅ Zapobiega przeładowaniu strony
|
||||||
|
|
||||||
let row = this.closest("tr");
|
let row = this.closest("tr");
|
||||||
let entryId = this.getAttribute("data-id");
|
let entryId = this.getAttribute("data-id");
|
||||||
let ipCell = row.querySelector(".ip-address");
|
let ipCell = row.querySelector(".ip-address");
|
||||||
let hostnameCell = row.querySelector(".hostname");
|
let hostnameCell = row.querySelector(".hostname");
|
||||||
let saveButton = row.querySelector(".save-btn");
|
let saveButton = row.querySelector(".save-btn");
|
||||||
|
|
||||||
|
// Jeśli pola edycji już istnieją, nie duplikuj ich
|
||||||
|
if (ipCell.querySelector("input") || hostnameCell.querySelector("input")) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
let ipInput = document.createElement("input");
|
let ipInput = document.createElement("input");
|
||||||
ipInput.type = "text";
|
ipInput.type = "text";
|
||||||
ipInput.className = "form-control form-control-sm";
|
ipInput.className = "form-control form-control-sm";
|
||||||
@ -97,7 +104,9 @@ document.addEventListener("DOMContentLoaded", function() {
|
|||||||
this.classList.add("d-none");
|
this.classList.add("d-none");
|
||||||
saveButton.classList.remove("d-none");
|
saveButton.classList.remove("d-none");
|
||||||
|
|
||||||
saveButton.addEventListener("click", function() {
|
saveButton.addEventListener("click", function(event) {
|
||||||
|
event.preventDefault(); // ✅ Zapobiega przeładowaniu strony
|
||||||
|
|
||||||
let newIp = ipInput.value.trim();
|
let newIp = ipInput.value.trim();
|
||||||
let newHostname = hostnameInput.value.trim();
|
let newHostname = hostnameInput.value.trim();
|
||||||
|
|
||||||
@ -121,7 +130,7 @@ document.addEventListener("DOMContentLoaded", function() {
|
|||||||
.catch(error => {
|
.catch(error => {
|
||||||
alert("Wystąpił błąd podczas zapisywania: " + error);
|
alert("Wystąpił błąd podczas zapisywania: " + error);
|
||||||
});
|
});
|
||||||
});
|
}, { once: true }); // ✅ Zapobiega dodaniu wielu eventów do przycisku "Zapisz"
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -180,6 +189,7 @@ document.addEventListener("DOMContentLoaded", function() {
|
|||||||
alert("Wystąpił błąd podczas usuwania: " + error);
|
alert("Wystąpił błąd podczas usuwania: " + error);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user