<input placeholder = "#hashtags" type = "text" (keydown) = "backKeyValidation($event)">
backKeyValidation(evt) {
let value = evt.target.value ;
}
Например,
input value = smk #k l#ls #l s# #sde
delete with backspace of #sde till its "#" of "sde"-- last hash;
after that delete and update input as- smk #k l#ls #l
аналогично остальные должны быть удалены;
Здесь значение похоже на #smk #k l#ls #l s# #s;
Я хочу удалить последнюю строку с помощью #, чтобы удалить символ, тогда, когда она дойдет до последнего '#', следует удалить полные "# с другими строками"
Это означает - delete from "#" to "#", а также обновление ввода при вводе клавиши backspace.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Если вы используете ванильный javascript, то это не способ привязки событий.
Мое решение:
Запустите фрагмент и проверьте его:
const filteredInput = document.getElementById('filtered-input');
filteredInput.addEventListener('keydown', function (e) {
let value = e.target.value;
// 8 is keyCode for backspace on windows
// or delete button on mac
if (e.keyCode === 8) {
//if there is a last hash tage
// thene delete it with word
if (value.lastIndexOf("#") !== -1) {
value = value.slice(0, value.lastIndexOf("#"));
}
}
this.value = value;
});<input type = "text" id = "filtered-input">Это простой пример, чтобы дать вам представление. Надеюсь, он поможет.
@Ahmadmnzr вам нужно найти позицию курсора, если он находится в конце ввода, вышеуказанный процесс хорошо работает, иначе, если он не в конце, вы должны реализовать его так, как он удаляет последний # хэш перед положением курсора. вот ссылка на то, как найти позицию курсора
Спасибо, но он должен удалить # до #hash, когда пользовательский курсор достиг единственного последнего тега # после того, как он удалил некоторые другие строки с последним хешем (не имея других строк с последним #), тогда должен начаться вышеуказанный процесс.