双击时我有一个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数据
答案 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,
});
});