我有一个Select2下拉菜单,我为其提供了一个匹配函数。在初始页面加载时,它被初始化如下:
jQuery(document).ready(function() {
jQuery(".my_select2").select2({
matcher: function(term, text) {...}
});
});
这在页面初始加载时运行良好。
现在,我有额外的下拉菜单(通过 AJAX 动态创建的 select
元素,即 jQuery(match).load(url)
)。这些额外的下拉菜单没有被初始化为 select2 小部件,这是可以理解的,即使它们与原始的 select2 选择器匹配。
那么,我该如何告诉 jQuery 将这些动态创建的 select
元素视为需要初始化的 select2 项目呢?我能否在匹配元素上设置某种“监视”,以便每次添加到页面时都会触发 select2 初始化?
我记得 jQuery 在一段时间前引入了 live()
,支持在元素创建之前匹配元素,如果我理解正确。我从未使用过该功能,现在它似乎已过时。但它确实感觉像我正在寻找的东西。
这是一个 WordPress 插件,目前使用的是 jQuery v1.11.2。
arrive.js
是为了使在根本不使用jQuery时事情变得更容易? - Jason