当需要用户输入手机号码的时候,把input的type属性设置为number,在移动端就能调起数字键盘了,但是maxlength属性对于type=number是无效的,而且还可以输入除了数字之外的其他字符,比如+.e,加上下面两个事件
<input onkeypress='return( /[\d]/.test(String.fromCharCode(event.keyCode)))'
oninput="if(value.length>11)value=value.slice(0,11)" type="number" placeholder="请输入手机号">
注意在移动端keypress事件不起作用,也就是说在移动端不能避免+-.e的输入,所以,要一个一个过滤掉了