1 回答

TA贡献1848条经验 获得超2个赞
在 Polymer 3.0 中,我已经修复了它。
static get template(){
return html`
<paper-input id="phone" name="mobilephone_no" allowed-pattern= "[0-9]" country-code="" placeholder="XX-XXX XXXX" maxlength="9" required>
`
}
ready(){
super.ready();
this.$.phone.addEventListener('keyup', function(e) {
var ph = this.value.replace(/\D/g,'').substring(0,9);
var deleteKey = (e.keyCode == 8 || e.keyCode == 46);
var len = ph.length;
if(len==0){
ph=ph;
}else if(len<2){
ph= ph;
}else if(len==2){
ph = ph + (deleteKey ? '' : '');
}else if(len<5){
ph= ph.substring(0,2)+'-'+ph.substring(2,5);
}else if(len==5){
ph= ph.substring(0,2)+'-'+ph.substring(2,5)+ (deleteKey ? '' : '');
}else{
ph= ph.substring(0,2)+'-'+ph.substring(2,5)+' '+ph.substring(5,9) + (deleteKey ? '' : '');
}
this.value = ph;
});
this.$.phone.addEventListener('keydown', function(e) {
var ph = this.value.replace(/\D/g,'').substring(0,9);
var deleteKey = (e.keyCode == 8 || e.keyCode == 46);
var len = ph.length;
if(len < 9){
ph=ph;
}else if(len<2){
ph= ph;
}else if(len==2){
ph = ph + (deleteKey ? '' : '-');
}else if(len<5){
ph= ph.substring(0,2)+'-'+ph.substring(2,5);
}else if(len == 5){
ph= ph.substring(0,2)+'-'+ph.substring(2,5) + (deleteKey ? '' : '');
}else{
ph= ph.substring(0,2)+'-'+ph.substring(2,5) +' '+ph.substring(5,9) + (deleteKey ? '' : '');
}
this.value = ph;
});
}
添加回答
举报