我是java脚本的新手。我对按键和更改事件感到有点困惑。
以下是示例代码
$("input").live('change',function ()
{
Alert("Change event call");
});
/
$("input").live('keypress',function ()
{
Alert("Keypress event call");
});
当正好调用Keypress事件并更改事件调用时?
答案 0 :(得分:6)
change
事件在值更改时发送给元素。这个 事件仅限于<input>
元素,<textarea>
框和<select>
元素。对于选择框,复选框和单选按钮,事件 当用户使用鼠标进行选择时立即触发, 但对于其他元素类型,事件将延迟到 元素失去焦点。
当浏览器注册时,
keypress
事件被发送到元素 键盘输入。这类似于keydown
事件,除了。{ 密钥重复的情况。如果用户按下并按住某个键,则keydown
事件被触发一次,但会触发单独的keypress
事件 对于每个插入的字符。另外,修饰键(如 Shift )触发keydown
个事件,但不触发keypress
个事件。
keypress
事件处理程序可以附加到任何元素,但事件 仅发送给具有焦点的元素。可聚焦元素可以 浏览器之间有所不同,但表单元素总是可以获得焦点 这种事件类型的合理候选人。
<强>参考文献:强>
答案 1 :(得分:2)
如果在元素失去焦点时更改了值,则会发生更改事件。每次按下并释放(非控制)键时都会发生按键事件。
答案 2 :(得分:1)
keypress
表示您只是点击了键盘键
change
表示您更改了项目的值
答案 3 :(得分:0)
可以按下某些键,但值仍然不会改变。例如,如果按Enter键或ctrl,则输入值不会改变。
答案 4 :(得分:0)
每次按下键盘键时都会触发Keypress事件。 当控件失去焦点时调用更改。