Удалить строку во входных данных - PullRequest
0 голосов
/ 27 ноября 2018
<input placeholder="#hashtags" type="text" (keydown)="backKeyValidation($event)">

 backKeyValidation(evt) {
    let value = evt.target.value ;
    }

Например, 1002

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
1004 * Остальные должны быть удалены;Здесь значение равно #smk #k l#ls #l s# #s;Я хочу удалить последнюю строку с помощью #, чтобы получить удаленный символ, а затем, когда он достигнет последнего, «#» должен удалить полные «# с другими строками»

Это означает - delete from "#" to "#" и обновить также ввод, когда клавиша возврата нажата.

1 Ответ

0 голосов
/ 27 ноября 2018

Если вы используете ванильный javascript, то это не способ связывать события.

Мое решение:

  • Отделение кодов javascript от файла html
  • Привязать прослушиватель событий для keydown

Запустить фрагмент и проверить его:

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">

Это простой пример, чтобы дать вам идею. Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...