From 380b30948d21f2fe4df7125188776e4db39b2ed6 Mon Sep 17 00:00:00 2001 From: ssyyhhrr <44934807+ssyyhhrr@users.noreply.github.com> Date: Sun, 1 Jan 2023 16:13:12 +0000 Subject: [PATCH] Accents Autocomplete --- assets/js/main.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/assets/js/main.js b/assets/js/main.js index 50092ff..e990764 100644 --- a/assets/js/main.js +++ b/assets/js/main.js @@ -24,20 +24,20 @@ function autocomplete(inp, arr) { let s1 = arr[i][0] let s2 = arr[i][1] /*check if the item starts with the same letters as the text field value:*/ - if (s1.substring(0, val.length).toUpperCase() === val.toUpperCase() || s2.substring(0, val.length).toUpperCase() === val.toUpperCase() || arr[i].join(" ").substring(0, val.length).toUpperCase() === val.toUpperCase()) { - let first = s1.substring(0, val.length).toUpperCase() === val.toUpperCase() - let second = s2.substring(0, val.length).toUpperCase() === val.toUpperCase() + if (s1.normalize("NFD").replace(/[\u0300-\u036f]/g, "").substring(0, val.length).toUpperCase() === val.toUpperCase() || s2.normalize("NFD").replace(/[\u0300-\u036f]/g, "").substring(0, val.length).toUpperCase() === val.toUpperCase() || arr[i].join(" ").normalize("NFD").replace(/[\u0300-\u036f]/g, "").substring(0, val.length).toUpperCase() === val.toUpperCase()) { + let first = s1.normalize("NFD").replace(/[\u0300-\u036f]/g, "").substring(0, val.length).toUpperCase() === val.toUpperCase() + let second = s2.normalize("NFD").replace(/[\u0300-\u036f]/g, "").substring(0, val.length).toUpperCase() === val.toUpperCase() /*create a DIV element for each matching element:*/ b = document.createElement("DIV") /*make the matching letters bold:*/ if (first) { - b.innerHTML = "" + s1.substr(0, val.length) + "" + s1.substr(val.length) + " " + s2; + b.innerHTML = "" + s1.substring(0, val.length) + "" + s1.substring(val.length) + " " + s2; } else if (second) { - b.innerHTML = s1 + " " + s2.substr(0, val.length) + ""; - b.innerHTML += s2.substr(val.length); + b.innerHTML = s1 + " " + s2.substring(0, val.length) + ""; + b.innerHTML += s2.substring(val.length); } else { - b.innerHTML = "" + arr[i].substr(0, val.length) + ""; - b.innerHTML += arr[i].substr(val.length); + b.innerHTML = "" + arr[i].join(" ").substring(0, val.length) + ""; + b.innerHTML += arr[i].join(" ").substring(val.length); } /*insert a input field that will hold the current array item's value:*/ b.innerHTML += "";