Ajout d'un trim() sur la valeur saisie avant de compter le nombre de caractères saisis.

This commit is contained in:
Fabrice PENHOËT 2022-02-21 11:23:33 +01:00
parent 100bdf8afe
commit 40b65d1b24

View File

@ -77,7 +77,7 @@ export class SearchEngine implements Filters
// Création du champ de recherche dans le DOM. // Création du champ de recherche dans le DOM.
public filter2HTML() : void public filter2HTML() : void
{ {
if(this.nbCharsForSearch >0 && this.placeholder === "") if(this.nbCharsForSearch > 0 && this.placeholder === "")
this.placeholder="Please enter at least NB characters." this.placeholder="Please enter at least NB characters."
// Pas de minlength ou de required, car l'envoi d'une recherche vide doit permettre d'annuler le filtre. // Pas de minlength ou de required, car l'envoi d'une recherche vide doit permettre d'annuler le filtre.
let html=`<form id="freeDatas2HTMLSearch">`; let html=`<form id="freeDatas2HTMLSearch">`;
@ -91,13 +91,13 @@ export class SearchEngine implements Filters
html+=`>&nbsp;<input type="submit" id="freeDatas2HTMLSearchBtn" value="${this._btnTxt}"></form>`; html+=`>&nbsp;<input type="submit" id="freeDatas2HTMLSearchBtn" value="${this._btnTxt}"></form>`;
this. _datasViewElt.eltDOM!.innerHTML=html;// "!" car l'existence de "eltDOM" est testé par le constructeur this. _datasViewElt.eltDOM!.innerHTML=html;// "!" car l'existence de "eltDOM" est testé par le constructeur
// L'affichage est actualisé quand l'éventuel nombre de caractères est atteint ou quand le champ est vide, car cela permet d'annuler ce filtre. // L'affichage est actualisé quand l'éventuel nombre de caractères est atteint ou quand le champ est vidé, car cela permet d'annuler ce filtre.
const searchInput=document.getElementById("freeDatas2HTMLSearchTxt") as HTMLInputElement, mySearch=this; const searchInput=document.getElementById("freeDatas2HTMLSearchTxt") as HTMLInputElement, mySearch=this;
searchInput.addEventListener("input", function(e) searchInput.addEventListener("input", function(e)
{ {
e.preventDefault(); e.preventDefault();
mySearch._inputValue=searchInput.value; mySearch._inputValue=searchInput.value.trim();
let searchLength=searchInput.value.length; const searchLength=mySearch._inputValue.length;
if(mySearch.automaticSearch && (mySearch.nbCharsForSearch === 0 || ( searchLength === 0) || (searchLength >= mySearch.nbCharsForSearch))) if(mySearch.automaticSearch && (mySearch.nbCharsForSearch === 0 || ( searchLength === 0) || (searchLength >= mySearch.nbCharsForSearch)))
mySearch._converter.refreshView(); mySearch._converter.refreshView();
}); });