0

我有以下场景,一个静态文本框和一个按钮来添加更多动态文本框。当用户输入关键字时,我正在显示建议 [jquery autocomplete]。对于静态文本框,自动编译功能在 document.ready 中,对于动态文本框,它在 "onkeypress" 中。

在动态文本框中,自动建议工作正常,但问题在于焦点。重点没有转向建议下拉菜单。

我在下面试过

 function getLocationList(id)
    {

      //  $('.autocomplete').css('background','none repeat scroll 0 0 #B9E5FB');

       $('.autocomplete').autocomplete({ autoFocus: true });//not working

    // Ajax Auto suggestion box.. stuff
      var optionsLocation, b;
      jQuery(function() {
      optionsLocation = { serviceUrl: '/App_Handlers/xxx.ashx',
      minChars: 2,
      delimiter: /(,|;)\s*/,
      deferRequestBy: 0, //miliseconds
      noCache: false,
      width: 300
      };
      b = $("#" +id).autocomplete(optionsLocation);
      });


    }

也尝试了以下但不工作

    $('.autocomplete').focus();
            $('.jobCenterArea').blur();

有什么建议么

4

3 回答 3

0

通过在将动态文本框添加到 html 文档后立即提供以下代码来解决此问题

$('.autocomplete').autocomplete({ autoFocus: true });//not working

// Ajax Auto suggestion box.. stuff
  var optionsLocation, b;
  jQuery(function() {
  optionsLocation = { serviceUrl: '/App_Handlers/xxx.ashx',
  minChars: 2,
  delimiter: /(,|;)\s*/,
  deferRequestBy: 0, //miliseconds
  noCache: false,
  width: 300
  };
  b = $("#" +id).autocomplete(optionsLocation);
  });

谢谢大家的i/p

于 2012-12-17T15:49:12.277 回答
0

这是关于委托事件的半相关问题:Direct vs. Delegated - jQuery .on()

考虑到live现在已弃用,我建议使用on

$(document).on('focus', '.autocomplete', function(e) {
  //insert your code here for the event
});

请注意,这document不是在这种情况下您可以绑定的唯一内容。

于 2012-12-14T22:03:08.373 回答
0

使用 $.live() 之类的

  $('.autocomplete').live('focus', function(){
       // callback code here
  });
于 2012-12-14T21:44:22.837 回答