commit 0ff94a64597408dceccc006e5a28bdc81feb32e4
parent 8bdc8d9f1c691e22c0664c74f2675516fe67a963
Author: Jacob R. Edwards <jacob@jacobedwards.org>
Date: Fri, 4 Oct 2024 10:00:13 -0700
Fix etc.error function
First, if you put the error in a form it would submit the form which
wasn't great, furthermore the dismiss button was not executing the
click handler, which may be an issue with ui.input. Regardless now
it's working.
Diffstat:
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/files/lib/etc.js b/files/lib/etc.js
@@ -82,13 +82,15 @@ export function error(message, on) {
if (err_elem) {
err_elem.textContent = message
} else {
- let err_elem = document.createElement("div")
+ let err_elem = document.createElement("form")
+ err_elem.addEventListener("submit", function(e) { e.preventDefault() })
err_elem.setAttribute("class", "error")
let msg = document.createElement("p")
msg.appendChild(document.createTextNode(message))
err_elem.append(msg)
- err_elem.append(ui.button("Dismiss", "Dismiss error", "close", { handlers: { click: { function() { err_elem.remove() } } } }))
+ let b = err_elem.appendChild(ui.button("Dismiss", "Dismiss error", "close"))
+ b.addEventListener("click", function(ev) { err_elem.remove(); ev.preventDefault() })
on.prepend(err_elem)
}