当页面内容被Ajax响应替换时,为什么不应用jQuery插件

Why jQuery plugin is not applied when content of page is replaced with Ajax response?

本文关键字:为什么不 应用 插件 jQuery 替换 响应 Ajax      更新时间:2023-09-26

目前我使用jQuery ajax向页面添加内容,并使用jQuery.selectbox-0.6.1.js插件对selectbox进行样式设置。

插件在我第一次加载页面时被应用,但当我点击以获得ajax响应来替换页面的某些内容时,selectbox插件不会将css样式应用于替换的ajax选择框。

这是我的代码:

$.ajax({
                  url: '/find-job?filter=1',
                  type:'GET',
                  async:'false',
                  success: function (data) 
        {
                      var $response=$(data);
                      $response.find('.view').each(function(){
                      $('.view').replaceWith(this).html;
           });
         }
}); 

一切都很好,但selectbox插件并没有应用于selectbox。

为什么插件不能自动应用css?

添加新内容后,您可以通过将selectbox插件放入成功回调来重新初始化它:

success: function (data) {
    var $response=$(data);
    $response.find('.view').each(function(){
        $('.view').replaceWith(this).html();
    });
    $("#element").selectbox();
});

实际上,你的代码一团糟,但你明白了。