Javascript 在xhr请求后刷新jquery选择器

Javascript 在xhr请求后刷新jquery选择器,javascript,jquery,Javascript,Jquery,我在页面加载中定义了如下元素: let cycleContainer = $('.start-cycling'), participantActiveButton = $('#participant-is-here'); 在我加载页面时,这两个元素都不存在。 我使用带有jQuery的XHR请求加载这些元素。 那么,在处理XHR之后,如何“刷新”元素列表呢 不给变量一个新值。类似于cycleContainer.refresh()的方法会更好 我找到了一个主题,其中提到了这一解决方案: $.fn.

我在页面加载中定义了如下元素:

let cycleContainer = $('.start-cycling'),
participantActiveButton = $('#participant-is-here');
在我加载页面时,这两个元素都不存在。 我使用带有jQuery的XHR请求加载这些元素。 那么,在处理XHR之后,如何“刷新”元素列表呢

不给变量一个新值。类似于
cycleContainer.refresh()
的方法会更好

我找到了一个主题,其中提到了这一解决方案:

$.fn.refresh = function() {
    return $(this.selector);
};

但是
this.selector
在我的chrome浏览器中没有返回任何内容。

为什么不在请求回调中定义元素变量?很明显,它们事先没有用。可能会显示更多脚本以获得更好的建议。这种模式没有什么直观的意义。为什么缓存不存在因而不可缓存的元素?在您的XHR解决之后,抓取元素会更明智。如果必须这样做,请不要存储jQ引用,而是存储选择器字符串,然后在XHR完成后处理它们(例如作为数组)。为什么不在XHR之后添加减速行。。。?表示调用刷新函数的位置…选择器不再存在。。。如果需要添加事件处理程序,也可以使用委派:
$(“#someContainer”).on(“someEvent”、“.start cycling”、function(){……})为什么不在请求回调中定义元素变量?很明显,它们事先没有用。可能会显示更多脚本以获得更好的建议。这种模式没有什么直观的意义。为什么缓存不存在因而不可缓存的元素?在您的XHR解决之后,抓取元素会更明智。如果必须这样做,请不要存储jQ引用,而是存储选择器字符串,然后在XHR完成后处理它们(例如作为数组)。为什么不在XHR之后添加减速行。。。?表示调用刷新函数的位置…选择器不再存在。。。如果需要添加事件处理程序,也可以使用委派:
$(“#someContainer”).on(“someEvent”、“.start cycling”、function(){……})