jquery 自动完成组合框不适用于通过 ajax 加载的新元素
jquery autoComplete combobox doesn't apply on new elements loaded via ajax
我在组合框 (select) 上使用 jQuery 自动完成插件,问题是这个组合框是通过 ajax 加载的,因此,自动完成插件未应用于我正在加载这个组合框,我知道我必须使用 .on() 以便 javascript 也可以应用于新元素,但我不知道如何
这是自动完成代码:
$(function() {
$( ".combobox" ).combobox();
$(document).on('click', '.toggle', function() {
$( ".combobox" ).toggle();
});
});
谢谢。
您必须为 ajax 加载的内容重新初始化自动完成。您可以跳过已有的元素,否则绑定自动完成。
使用要应用组合框的选择器调用以下函数。每当您通过 ajax 更新内容时,只需调用此方法即可。
function initCombobox(selector) {
var combos = $(selector);
$.each(combos, function (i, e) {
if (!$(e).data('combobox')) {
$(e).combobox();
}
});
}
像这样打电话:initCombobox(".combobox");
我在组合框 (select) 上使用 jQuery 自动完成插件,问题是这个组合框是通过 ajax 加载的,因此,自动完成插件未应用于我正在加载这个组合框,我知道我必须使用 .on() 以便 javascript 也可以应用于新元素,但我不知道如何 这是自动完成代码:
$(function() {
$( ".combobox" ).combobox();
$(document).on('click', '.toggle', function() {
$( ".combobox" ).toggle();
});
});
谢谢。
您必须为 ajax 加载的内容重新初始化自动完成。您可以跳过已有的元素,否则绑定自动完成。 使用要应用组合框的选择器调用以下函数。每当您通过 ajax 更新内容时,只需调用此方法即可。
function initCombobox(selector) {
var combos = $(selector);
$.each(combos, function (i, e) {
if (!$(e).data('combobox')) {
$(e).combobox();
}
});
}
像这样打电话:initCombobox(".combobox");