检测字段中输入的每个字符并运行条件语句
Detecting each character inputed in field and run conditionals
我正在构建一个web应用程序。我相信,如果我在提问之前先解释一下我希望用户体验是什么样子,这将是最简单的。
我希望我的用户进入我的网站并开始键入文本字段。当输入每个字符时,我想对该字符运行一个条件语句,以决定是否应该将其添加到文本字段中。如果输入的字符不是我想要的字符,则不会添加该字符。
在提交文本后,我在我的模型中进行了验证,但我希望它是实时的。我猜这与JavaScript有关,我对它的编码不够熟悉,不知道该搜索/研究什么。你能帮我看看哪里吗(教程、概念等)?
感谢您花时间阅读本文。
您可以使用传递给keydown事件的事件对象上的preventDefault
方法来执行此操作。这基本上是告诉浏览器不要预设置其默认操作(在文本字段中,将字母附加到字段中)。
为了简洁起见,这里有一个使用jQuery的实现,但您也可以在纯javascript中实现相同的功能:
$('input').on('keydown', function(event) {
// event.which is the character code
if ( /* some condition */ ) event.preventDefault();
});
这里有一个你不能键入字母a的例子:http://jsfiddle.net/354XJ/
您的情况并不完全是,但一个很好的起点是这个问题及其答案:如何使用jQuery在HTML输入框中只允许数字(0-9)?
你基本上是在寻找javascript,它会拦截按键,并且只有在它是允许的键时才允许它,上面的问题为数字键实现了这一点-从这个开始,并根据你的需要扩展它。
相关文章:
- 如何使用phaser使html5游戏在移动设备浏览器上运行
- 使用压缩的JavaScript文件(不是运行时压缩)
- Javascript运行php文件,然后下载文件
- chrome扩展:尽管运行了at:documentidle,js脚本还是过早启动
- 在JavaScript中输出转义字符
- 我已经创建了一个jquery转盘,并使用if条件来运行和停止转盘
- 如果文本或值以字符开头,请运行函数
- 仅在单个页面中运行字符计数javascript函数
- 在java中运行字符倒计时
- JavaScript运行时错误:无效字符
- HTML 在服务器上运行时在 jQuery 中显示代码而不是字符
- 运行正则表达式替换,同时忽略(但保留)某个字符
- JavaScript运行时错误:无效字符(JSON.parse)
- 检测字段中输入的每个字符并运行条件语句
- 修复了带有运行反馈的字符限制文本框-javascript
- 循环遍历数组中的字符,对于每个可能的3个字符的组合运行代码
- JavaScript运行时错误:使用JSON.parse的字符无效
- 在Applescript中运行Javascript时转义字符
- 为什么前面有字符串+冒号字符的文字值不会引发运行时异常
- JavaScript中的转义字符在PHP Wordpress短代码中运行