我是JavaScript新手,无法找到需要的确切代码。如何获得只有两个字母作为字母,并保留为文本区域中的数字
我想要一个maxlength =“5”的文本字段,它应该看起来像ex:AE456,LM975。即前两个字母应该是字母,接下来的三个字母应该是数字。
文本区域只应该按照此模式接受输入。我不想要任何警报。只需要接受只有这种模式才能输入的内容。 Javascript是可取的。任何帮助都非常可观。 在此先感谢。
我是JavaScript新手,无法找到需要的确切代码。如何获得只有两个字母作为字母,并保留为文本区域中的数字
我想要一个maxlength =“5”的文本字段,它应该看起来像ex:AE456,LM975。即前两个字母应该是字母,接下来的三个字母应该是数字。
文本区域只应该按照此模式接受输入。我不想要任何警报。只需要接受只有这种模式才能输入的内容。 Javascript是可取的。任何帮助都非常可观。 在此先感谢。
HTML5支持模式,其中一个字段可以按照提供的正则表达式接受值。你可以在这里找到相关的帖子。 Regex Patterns for HTML5 Text Field
但是,如果你想支持旧的浏览器,那么你必须重视的事件,如“按键”输入栏,以及处理该事件验证输入
你需要的是一个正则表达式。在这里查看正则表达式。这应该让你知道如何检查你的状况。
如果你有这样的HTML:
<input type="text" id="text1" />
那么你可以使用此Javascript:
function validateInput() {
var val = document.getElementById("text1").value;
return /[A-Z]{2}\d{3}/i.test(val);
}
,并调用它像:
if (validateInput()) {
// Matches pattern: @@###
}
DEMO:http://jsfiddle.net/GgQsz/
这允许开始时使用大写和小写字母字符。如果您只想允许大写,请删除正则表达式的i
标志。
为什么不是'/ [a-z] {2} \ d {3}/i' – 2013-04-23 06:12:13
@Derek朕会功夫因为我是个白痴。好点:) – Ian 2013-04-23 06:12:27
看看这个;)http://jsfiddle.net/DerekL/Y4Ztn/ – 2013-04-23 06:20:51