Add a clear button for dynamic input

This commit is contained in:
Gregoo 2025-01-29 16:14:52 +01:00
parent e8a8899b3c
commit bfae90c247
2 changed files with 23 additions and 14 deletions

View File

@ -3,6 +3,7 @@ class BrickChanger {
constructor(prefix, id, url, parent = undefined) { constructor(prefix, id, url, parent = undefined) {
this.prefix = prefix this.prefix = prefix
this.html_element = document.getElementById(`${prefix}-${id}`); this.html_element = document.getElementById(`${prefix}-${id}`);
this.html_clear = document.getElementById(`clear-${prefix}-${id}`);
this.html_status = document.getElementById(`status-${prefix}-${id}`); this.html_status = document.getElementById(`status-${prefix}-${id}`);
this.html_type = this.html_element.getAttribute("type"); this.html_type = this.html_element.getAttribute("type");
this.url = url; this.url = url;
@ -24,6 +25,13 @@ class BrickChanger {
this.html_element.addEventListener(listener, ((changer) => (e) => { this.html_element.addEventListener(listener, ((changer) => (e) => {
changer.change(); changer.change();
})(this)); })(this));
if (this.html_clear) {
this.html_clear.addEventListener("click", ((changer) => (e) => {
changer.html_element.value = "";
changer.change();
})(this));
}
} }
// Clean the status // Clean the status

View File

@ -31,6 +31,7 @@
autocomplete="off"> autocomplete="off">
{% if g.login.is_authenticated() %} {% if g.login.is_authenticated() %}
<span id="status-{{ prefix }}-{{ id }}" class="input-group-text ri-save-line"></span> <span id="status-{{ prefix }}-{{ id }}" class="input-group-text ri-save-line"></span>
<button id="clear-{{ prefix }}-{{ id }}" type="button" class="btn btn-sm btn-light btn-outline-danger border"><i class="ri-eraser-line"></i></button>
{% else %} {% else %}
<span class="input-group-text ri-prohibited-line"></span> <span class="input-group-text ri-prohibited-line"></span>
{% endif %} {% endif %}