动态添加行上的jquery自动完成
我正在为我的web应用程序使用jQuery UI自动完成插件。动态添加行上的jquery自动完成,jquery,jquery-ui,jquery-autocomplete,Jquery,Jquery Ui,Jquery Autocomplete,我正在为我的web应用程序使用jQuery UI自动完成插件。 它对我现有的行非常有效,但对我动态添加的行不太有效 这是我的jquery代码 $(function () { var tab = $("#tabs-6"); tab.find("input[name='newContactName']").autocomplete( { source: function(request, response) { var cachedRequest =
它对我现有的行非常有效,但对我动态添加的行不太有效 这是我的jquery代码
$(function ()
{
var tab = $("#tabs-6");
tab.find("input[name='newContactName']").autocomplete(
{
source: function(request, response) {
var cachedRequest = $(this).data("cachedRequest");
// Previous data is cached, so new data is a subset of this
if (cachedRequest != null &&
cachedRequest.length > 0 &&
request.term.indexOf(cachedRequest) >= 0)
{
..some code..
}
else
{
var input = $(this);
$.ajax({
..some code..
success: function(data)
{..some code..
}
});
}
},
minLength: 3,
delay: 500
}
);
tab.find("input[name='newContactName']").bind('autocompleteselect', function(event, ui) {
$(this).prev("input[name='newContactId']").val(ui.item.person_id);
});
/* Customizing the autocomplete suggestions box that pops up.
*/
var input1=$("input[name='newContactName']");
input1.each(function (){
$(this).autocomplete("widget").css("height", "10em");
$(this).autocomplete("widget").css("overflow", "auto");
$(this).autocomplete("widget").css("width", "210px");
});
}))
这是用于现有行的autocomplete插件的jQuery代码,对于新添加的行,这是我尝试插入的html
var html = '<tr>..first 8 td elements.. <td><input type="text" name="newContactName"> </td>'+
..some more td elements</tr>';
var newRow = $(html).insertAfter(row); // insert content,where row is my current row
newRow.find("td:nth-child(9) input[name='newContact']").autocomplete();
var html=“…前8个td元素…”+
…更多td元素';
var newRow=$(html).insertAfter(行);//插入内容,其中行是我的当前行
find(“td:n子(9)输入[name='newContact']”)autocomplete();
如何确保自动完成功能也适用于我新添加的行 我发现有几件事可能是错的 首先,当您添加新行时,您将输入的名称设置为“newContactName”,但当您找到()时,您将查找“name='newContact'” 另外,在对find()的结果调用autocomplete()时,需要指定source选项。由于在非动态行中将源设置为函数,因此可能需要将其分解为命名函数,并在两个autocomplete()调用中使用命名函数作为源
希望这能有所帮助……我发现有几件事可能是错的 首先,当您添加新行时,您将输入的名称设置为“newContactName”,但当您找到()时,您将查找“name='newContact'” 另外,在对find()的结果调用autocomplete()时,需要指定source选项。由于在非动态行中将源设置为函数,因此可能需要将其分解为命名函数,并在两个autocomplete()调用中使用命名函数作为源
希望这有助于……有什么想法可以做这件事吗?有什么想法可以做这件事吗?