JQUERY знак продолжает добавлять при вводе клавиши обратного пробела

#javascript #jquery

#javascript #jquery

Вопрос:

Запуск ниже HTML и JS кода для получения значения из JSON и отображения самого поля ввода. Рендеринг и отображение работают нормально.

Но когда я пытаюсь отредактировать номер, существует 90 98888222 (пример).. при вводе клавиши обратного пробела он повторно добавляет знак . пример: 90 98888222 . При каждом нажатии клавиши обратного пробела добавляется знак .

Я думаю, что этот код в функции get вызывает только проблему. Необходимо добавить sign вручную в качестве ответа на данные JSON без знака .

вернуть CONTACT_MOBILE ? ‘ ‘ CONTACT_MOBILE.number : «;

Не уверен, как блокировать с помощью 1 при вводе обратного пробела.

Спасибо

 get: function() {
   let CONTACT_MOBILE = _.find(this.updateProfile.contactList, (contact) => {
     return contact.type == 'MOBILE';
   });
   return CONTACT_MOBILE ? ' '   CONTACT_MOBILE.number : '';
},
set: function(newValue) {
  let CONTACT_MOBILE = _.find(this.updateProfile.contactList, (contact) => {
     return contact.type == 'MOBILE';
  });
  if(CONTACT_MOBILE) {
     CONTACT_MOBILE.number = ' '   newValue;
  }
}
  

Комментарии:

1. Поэтому определите, есть ли он там, прежде чем добавлять его….

Ответ №1:

Используйте это :

 set: function(newValue) {
    let CONTACT_MOBILE = _.find(this.updateProfile.contactList, (contact) => {
      return contact.type == 'MOBILE';
    });
    if(CONTACT_MOBILE) {
      CONTACT_MOBILE.number = "";
      if(!(newValue.charAt(0) === ' ')){
         CONTACT_MOBILE.number = ' ';
      }
      CONTACT_MOBILE.number  = newValue;
   }
}