使用类时 Jquery keyup 事件不起作用

sid*_*y3d 0 jquery events handler

我有一个带有replyComment 类的输入字段,并且有一个事件处理程序将确定是否按下了回车键。

<input class="replyComment" placeholder="Enter Reply" type="text">
$('#replyComment').keyup(function (e) {
   alert(e.keyCode);
   if (e.keyCode == 13) {
      alert('Enter key was pressed.');
   }
});
Run Code Online (Sandbox Code Playgroud)

问题是该事件不会触发。问候,

Vat*_*sal 5

正如大家所提到的,“#”指的是由 id 表示的元素。由于您正在使用的代码 ->

<input class="replyComment" placeholder="Enter Reply" type="text">
Run Code Online (Sandbox Code Playgroud)

指的是您需要通过 访问它的类。选择器。所以理想情况下你的代码应该是这样的

    $(".replyComment").keyup(function(){});
Run Code Online (Sandbox Code Playgroud)

在某些情况下,如果页面加载时 DOM 中不存在具有此类的元素,则此方法也不起作用。如果这是在您的页面被某些 JS 事件或其他事件加载后在您的页面中引入的,那么您将必须使用“on”选择器将其与 DOM 绑定。

所以你的代码应该是这样的

jQuery(document ).on( "keyup", ".replyComment", function(){ });
Run Code Online (Sandbox Code Playgroud)

希望这会有帮助

快乐学习:)