jquery autoComplete 组合框不适用于通过 ajax 加载的新元素

jquery autoComplete combobox doesn't apply on new elements loaded via ajax

本文关键字:新元素 加载 元素 ajax 组合 autoComplete 不适用 适用于 jquery      更新时间:2023-09-26

我在组合框上使用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");