今天在做一个textarea旁边有统计字数的span的功能,给textarea绑定了keypress事件
$("#desc").keypress(
function(){
alert(" 进入方法中 ");
//统计textarea字数
var count = $(this).val().length ;
var last = 300 - count ;
if(last < 0 ){
alert("备注内容长度不能超过300字");
$("#desc").focus();
return false;
}else{
//span内容改变
$("#descCount").html(last);
}
}
);
我想的是输入内容和按backspace或delete键删除内容时,事件都会触发,去更新span的字数。但是按backspace删除内容时,事件没有触发,相应的alert消息没有出现。
查了一下资料,人家说keypress不跟踪backspace,建议改为keydown,改了一下,果然是这样。
为什么keypress不跟踪backspace键呢?
分享到:
相关推荐
通过监听键盘事件(如`keydown`或`keypress`),可以捕获Backspace键的触发,并通过特定的方法阻止其默认行为,进而实现禁止Backspace键使浏览器后退的目的。 #### 代码实现详解 ##### 方法一:通用实现方案 ```...
在网页开发中,有时我们需要对用户的键盘操作进行特殊处理,特别是在一些特定的场景下,比如在SPA(单页面应用)中,我们可能希望阻止用户在非输入区域按下退格键(Backspace)时触发浏览器的后退功能。这是因为,...
2. **功能键齐全**:不仅包括0-9的数字键,还提供了退格键(Backspace)用于删除错误输入,以及清除键(Clear)来清空当前输入框的内容,这极大地提高了用户输入的效率。 3. **易用性**:基于jQuery库构建,对于...
3. keypress事件主要用来接收字母、数字等ANSI字符,而keydown和keyup事件过程可以处理不被keypress识别的击键,如功能键(F1-F12)、编辑键、定位键以及这些键和键盘换档键的组合等。 特别地,在处理组合键如Ctrl+...
其中,keydown事件在用户按下键盘上的任意键时触发,keypress事件在按键被按下并产生字符时触发,keyup事件则在键盘键被释放时触发。本文主要关注keydown事件的监听。 要监听全局的键盘按下事件,可以使用jQuery中...
- 绑定`keypress`事件,阻止在达到最大长度时非Backspace和Delete键的输入。 - 绑定`keyup`事件,实时计算剩余可输入字符数,并更新提示信息。 - 使用`setInterval`函数,当输入长度超过最大长度时,按照设定速度...
常用的键盘事件包括`keydown`(按下键盘时触发)、`keyup`(释放键盘时触发)和`keypress`(字符输入时触发)。现代浏览器推荐使用`addEventListener`方法,而较老的IE浏览器可以使用`attachEvent`方法。 示例代码...
此函数的目的是在用户输入数据时,限制输入必须是数字,但同时允许用户使用backspace键删除错误输入。为了实现这一功能,我们可以通过监听键盘输入事件来判断用户输入的内容是否符合要求。 函数`checkNo`通过传入...
文章提到的主要方法是利用JavaScript监听键盘事件,特别是后退键(Backspace)事件,并对这一行为进行拦截。具体的实现原理是通过绑定键盘按下事件(keydown)和键盘按键事件(keypress)到全局的document对象上。在...