inputmode
似乎被Android设备上的chrome在更改输入type
属性时忽略。
代码示例
class InputApp extends React.Component {
constructor(props) {
super(props)
this.state = {
mask: true
}
}
render() {
return (
<div>
<h2>Entry</h2>
<input type={this.state.mask? "password": "text"} onFocus={() => {this.setState({mask: false})}} onBlur={() => {this.setState({mask: true})}} inputMode="numeric" />
</div>
)
}
}
ReactDOM.render(<InputApp />, document.querySelector("#app"))
https://jsfiddle.net/3qhyjbgv/21/
虽然有一个输入,掩盖了模糊时的值,inputmode
似乎被Android设备上的chrome忽略。在IOS上的chrome中,它实际上按预期工作
1条答案
按热度按时间zhte4eai1#
我想添加评论,但我没有足够的声誉。
这可能是关于你的Android设备上的键盘设置吗?我在我的Android设备上尝试了你的代码,通常我的键盘上没有数字,但当我单击输入区域时,数字行出现在我的键盘上方。我的手机上没有数字键盘,所以它总是在我的键盘上方添加数字行。
所以我想说,输入模式不会被忽略,但它不像你期望的那样工作的原因可能是你的设备的键盘。你能在不同的android设备上试试吗?
你可能已经检查过this link,但如果你没有,也许这些解决方案中的一些可以为你工作。