如何检测<input />中是否输入了错误的键?

时间:2011-01-13 23:18:38

标签: javascript

我们有一个简单的html文本输入: <input type=text /> - 我尝试做的就是在用户尝试输入证明字符时添加事件,例如空格。因此,我可以在用户输入时提醒用户不允许使用这些字符。

3 个答案:

答案 0 :(得分:1)

捕获onchange事件和onkeyup事件。只有当用户选中另一个控件时才会触发onchange。每个打字的角色都会触发onkeyup。不确定用户何时粘贴内容。

<script>
function OnChangeOccurred(evt) {
    var str = evt.currentTarget.value; // this is the current text in the input box
}
</script>

<input onchange="OnChangeOccurred(event);" onkeyup="OnChangeOccurred(event);" />

答案 1 :(得分:1)

扩展rcravens回答一点,我会使用onkeyup事件,因为我有IE问题没有注册在onkeydown上触发事件的键。然后,您可以处理事件的键代码以确定要采取的操作。

function getCode(e) {
     var src = get your event however you do so.

     var code = evt.charCode || evt.keyCode;

     switch (code) {
          // do something here.
     }
}

<input type="text" onkeyup="getCode()">

资源良好:Quirksmode.org 在这里:character codes

答案 2 :(得分:-1)

尝试使用JavaScript的onkeypress事件。

http://www.w3schools.com/jsref/event_onkeypress.asp

这应该让你开始。然后,您可以拦截所有键并回显它们的值以确定您想要的键。务必测试crossbrowser合规性。

鲍勃