【问题标题】:How can I have a field that accepts two different mask formats?我怎样才能有一个接受两种不同掩码格式的字段?
【发布时间】:2020-07-22 17:15:03
【问题描述】:

我正在创建一个表单并使用 react-input-mask 组件。用户可以有两种不同格式的电话号码,分别是“(99) 9999-9999”或“(99) 9 9999-9999”。

我已阅读文档,但不知道如何使以下字段接受这 2 种格式并在用户键入时“适应”。提前致谢!

<InputMask onBlur={(e) => this.handleBlur('telefone', e.target.value)}
           type="text"
           defaultValue={new_item.telefone}                        
           class='inputTextCriar'
           mask="(99) 9999-9999">
</InputMask>

【问题讨论】:

    标签: reactjs input-mask


    【解决方案1】:

    作为一个没用过这个组件的人,我觉得最快的解决办法就是在 mask 属性上加一些逻辑

    const mask = value.length === 11 ? "(99) 9 9999-9999" : "(99) 9999-9999"
    <InputMask
     mask={mask}
     ...
    />
    

    【讨论】:

    • 我明白你试图做的事情,但它不起作用,它根本没有格式化。另外,按照您建议的方式,不会定义值,我尝试使用箭头函数并测试 target.event.value 的长度。还是不行
    猜你喜欢
    • 2021-04-05
    • 2019-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-04
    • 1970-01-01
    相关资源
    最近更新 更多