找回密码
 立即注册
搜索
查看: 804|回复: 0

在input框使用keyup发请求会触发2次的问题

[复制链接]

581

主题

110

回帖

4066

积分

管理员

积分
4066

众神之神

发表于 2022-11-28 21:52:37 | 显示全部楼层 |阅读模式
有人说绑定前先解绑,就会解决,我测试不行;
  1. $("#inputselect").unbind("keyup").keyup(function(event){
  2.                             alert(event.which);
  3.                         })
复制代码


看了下面2篇文章
https://segmentfault.com/q/10100 ... sf-similar-question
https://blog.csdn.net/q646926099/article/details/79893505

使用DOM3以下三种复合事件:
1、compositionstart:官方解释,触发于一段文字的输入之前,也就是在输入一段需要的文本(第一个字母开始)或语音开始输入时会触发。
2、compositionupdate访问data:正插入的新字符;
3、compositionend访问data:插入的所有字符;

文本框会填入 “虚拟文本”(待确认文本),同时触发input事件;在触发compositionend时,就是填入实际内容后(已确认文本)。
  1. var flag = true;
  2.         $('#id').on('compositionstart',function(){
  3.             flag = false;
  4.         })
  5.         $('#id').on('compositionend',function(){
  6.             flag = true;
  7.         })
  8.         $('#id').on('input',function(){
  9.             setTimeout(function(){
  10.                 if(flag){
  11.                     console.log(1);
  12.                 }
  13.             },0)
  14.         })

复制代码



您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|十三博客 ( 鲁ICP备2023000528号 )

GMT+8, 2026-6-1 14:59 , Processed in 0.048897 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表