输入框验证

时间:2012-04-17 11:10:57

标签: javascript jquery html

我想创建一个输入框,用于输入一个人的私人输入详细信息,其中第一个字符必须是A或E,​​其余可以是字母数字,不允许使用特殊字符。我需要做同样的验证,没有人输入任何特殊字符,第一个字符必须是A或E(所有必须在客户端检查)

任何人都可以指导我如何继续

3 个答案:

答案 0 :(得分:2)

使用JavaScript查看正则表达式以及keydown事件。您可以将函数附加到keydown事件,并在此函数内检查输入框匹配,然后按照您的意愿继续。

这样的事情:(未经测试)

<script>
function checkInput() {
  var inputToCheck = document.getElementById('my_input');
  if (!inputToCheck.value.match(/[AE]\w+/)) {
    // do something here, like alert them or remove special characters with .replace
  }
}
</script>

<input id="my_input" onkeydown="checkInput();" />

答案 1 :(得分:0)

如果这是唯一要验证的字段,我会用js&amp;编写我自己的字段。正如Leonard Challis写的那样regexp(但在关键事件上)。

如果网站上有很多字段和多个表单,我会考虑一个框架。这非常好:http://bassistance.de/jquery-plugins/jquery-plugin-validation/

如果你要使用那个,你可以根据自己的特殊需求编写自定义功能。 http://docs.jquery.com/Plugins/Validation/Validator/addMethod#namemethodmessage

答案 2 :(得分:0)

这听起来像是一个家庭作业(因为从具体的“E”或“A”开始听起来非常人为),所以我建议首先决定对任务的解释。 “E”和“A”应该不区分大小写吗? “字母数字”究竟是什么意思?例如,是“Σ”或“Я”或“1”字母数字?如果目的是在客户端进行检查,那么当JavaScript被禁用时,您是否应该尝试使页面完全不起作用,或者您是否应该尽可能地检查客户端 ? (在后一种情况下,请考虑在HTML中使用pattern属性。在某些现代浏览器中,即使禁用JavaScript也会导致检查。)