aboutsummaryrefslogtreecommitdiff
path: root/assets/js/edit.js
diff options
context:
space:
mode:
authorn-peugnet <n.peugnet@free.fr>2019-10-20 19:39:14 +0200
committern-peugnet <n.peugnet@free.fr>2019-10-20 19:48:18 +0200
commit229f7ff95ef2578adc280022e70284ec80e3dc17 (patch)
tree4a5f6a57c2bd6339e5c26611b0ffdf487194aa3b /assets/js/edit.js
parent588dab7350c3077d60ccc21d55aedf77da770f18 (diff)
downloadwcms-229f7ff95ef2578adc280022e70284ec80e3dc17.tar.gz
wcms-229f7ff95ef2578adc280022e70284ec80e3dc17.zip
small fixes on ajax form submission
- use only oninput change event - dont update unsavedchanges if toggle class - dont update unsavedchanges if ajax request fails
Diffstat (limited to 'assets/js/edit.js')
-rw-r--r--assets/js/edit.js11
1 files changed, 6 insertions, 5 deletions
diff --git a/assets/js/edit.js b/assets/js/edit.js
index 956250e..92a09b1 100644
--- a/assets/js/edit.js
+++ b/assets/js/edit.js
@@ -6,7 +6,6 @@ window.onload = () => {
form = document.getElementById('update');
let inputs = form.elements;
for (i = 0; i < inputs.length; i++) {
- inputs[i].onchange = changeHandler;
inputs[i].oninput = changeHandler;
}
@@ -25,8 +24,8 @@ window.onload = () => {
function keyboardHandler(e) {
if (e.composed) {
if (e.ctrlKey) {
- // console.log(e.key);
switch (e.key) {
+ // ctrl + s
case 's':
e.preventDefault();
submitHandler(form);
@@ -38,9 +37,12 @@ function keyboardHandler(e) {
/**
* Manage change event
- * @param {Event} e
+ * @param {InputEvent} e
*/
function changeHandler(e) {
+ if(e.target.classList.contains("toggle")) {
+ return;
+ }
unsavedChanges = true;
}
@@ -49,12 +51,11 @@ function changeHandler(e) {
* @param {HTMLFormElement} form
*/
function submitHandler(form) {
- unsavedChanges = false;
-
var xhr = new XMLHttpRequest();
var fd = new FormData(form);
xhr.addEventListener("load", function(event) {
+ unsavedChanges = false;
alert("updated");
});
xhr.addEventListener("error", function(event) {