首页 > 解决方案 > JQUERY + 符号继续添加输入退格键

问题描述

在 HTML 和 JS 代码下运行以从 JSON 中获取值并呈现自己的输入字段。渲染和显示工作正常。

但是当我尝试编辑号码时,+90 98888222(示例)存在..在输入退格键时,它反复添加 + 号。例如:+++++90 98888222。每次按退格键时,都会添加 + 号。

get 函数中的这段代码只会导致我认为的问题。需要在前面手动添加 + 符号作为没有 + 符号的 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;
  }
}

标签: javascriptjquery

解决方案


用这个 :

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;
   }
}

推荐阅读