2
    $('#enter').click(function (){
        var query = $('#search').val();
        $('body').removeHighlight().highlight(query);
    });

以上是我用于页面即时搜索的代码。如何添加一个事件侦听器,以便当我按 Enter 时,它会在我按 Enter 时自动触发 .click() 函数,这样用户就不必手动单击 #enter 元素。此外,如果我按 Enter 键,它不会影响搜索字段的值。如果代码在 jQuery 中会很有帮助。

4

3 回答 3

3

您可以使用 jquery 上的 keypress 事件来触发该事件。

$('#enter').keypress(function (e){
    var code = (e.keyCode ? e.keyCode : e.which);
    if(code == 13) {
       var query = $('#search').val();
       $('body').removeHighlight().highlight(query);
    }
});
于 2012-06-22T20:41:11.643 回答
0

我假设您的意思是Entersearch文本框中按。试试下面,让我知道这是否是你想要的,

$('#search').keydown(function (e) {       
   if (e.which == 13) {
      e.preventDefault();
      $('#enter').click();
   }
});

尝试更改您的查询功能,如下所示,

$('#enter').click(function (){
    var query = $('#search').val();
    if ($.trim(query) != '')  {
      $('body').removeHighlight().highlight(query);  
    }
});
于 2012-06-22T20:41:16.453 回答
0

就像我在评论中说的,你可以像这样使用按键

$('#search').keypress(function(event) {
    if ( event.which == 13 ) {
        $('#enter').trigger('click');
    }
})
于 2012-06-22T20:43:28.137 回答