鉴于只接受一个用于输入字符文本字段,如下:输入文本只允许3特定的字符
<input type="text" maxlength="1" name="k1" placeholder="?" />
是否有可能进一步限制的文本输入,从而仅1
,X
或2
(如在投注系统中)验证?
鉴于只接受一个用于输入字符文本字段,如下:输入文本只允许3特定的字符
<input type="text" maxlength="1" name="k1" placeholder="?" />
是否有可能进一步限制的文本输入,从而仅1
,X
或2
(如在投注系统中)验证?
<input type="text" max-length="1" name="k1" placeholder="?" pattern="[ABC]" />
将允许字母A,B和C可以替换A,B和C,任何你想要的
浏览器支持:http://caniuse.com/#feat=input-pattern
正则表达式指南:https://msdn.microsoft.com/en-us/library/az24scfc(v=vs.110).aspx
这就是太好了谢谢! :) –
对于允许1
2
和X
,这里
模式= “[12X]” 的意思是1,2或X
注:只有<input type="text" max-length="1" name="k1" pattern="[12X]" />
这不会工作,直到除非你有一个表格,并提交。这将允许你在输入框中放置任何字符。这将在用户提交时生效。
<form>
<input type="text" max-length="1" name="k1" pattern="[12X]" />
<input type="submit">
</form>
至少有两种方法可以做到这一点,包括使用模式属性,非JavaScript的解决方案,那肯定工程;请参阅下文提供的解决方案但是,如果您需要更加严格的限制,那么这里有一个JavaScript解决方案,可以阻止用户提交无效数据。
HTML:
<form>
<label>Enter 1, 2, or x</label>
<input id="myinput" maxlength="1" type="text">
<input type="submit"><input type="reset">
</form>
的JavaScript:
myinput.oninput = function() {
if (myinput.value != 1 && myinput.value != 2 && myinput.value != 'x') {
alert("Invalid: " + myinput.value);
}
};
全部工作示例here
,探讨了oninput等事件一个很好的资源:https://javascript.info/events-change-input
使用JavaScript为。 –
你能指导我吗?或者,也许告诉我要搜索什么,因为我已经尝试了几天:) –
检查此问题http://stackoverflow.com/questions/22086823/limit-number-of-characters-in-input-type-number –