输入自动完成初始化

时间:2014-01-16 17:00:42

标签: javascript jquery

双击时我有一个div,我创建一个输入并将其初始化为自动完成。当我第一次双击时自动完成不起作用。

但是当我从div中聚焦时它会起作用,并再次双击同一个div。在同一div上双击第二次时自动完成。

如何初始化自动完成功能,以便在我第一次双击div

时工作
HTML:
<td>
<div class = "Edit"/>
</td>


$('.Edit').on('dblclick', function (evt) {
    var $target = $(evt.target),
        $td = $target.parent(),
        $editdiv = $('<div></div>').appendTo($td),
        $input = $('<input/>').appendTo($editdiv);
    $input.autocomplete({
        autoFocus: true,
        minLength: 1,
        source: datasrc,
        select: selectedItem
    });
});

注意:对于源码我使用Json数据

1 个答案:

答案 0 :(得分:0)

创建动态输入后

$( ".Edit" ).dblclick(function(evt) {
      var $target = $(evt.target),
       $td = $target.parent(),
       $editdiv = $('<div></div>').appendTo($td),
       $input = $('<input id="someInput"/>').appendTo($editdiv);
});

您可以使用jQuery appear plugin。当元素滚动到视图中或以其他方式变得对用户可见时触发。

 $('#someInput').appear(function() {
     $('#someInput').autocomplete({
          source: someObject,
     });
 });