jQuery滤波器方法删除脚本标签



我对一些返回某些HTML的URL进行了一个ajax调用,我想在DOM中某个地方转到该HTML的某个部分。因此,在从服务器中检索数据的地方,我使用过滤器方法剥离了不需要的HTML并在DOM中插入所需的HTML。但是,由于看来所需的HTML内部的脚本标签已被删除。我认为过滤器方法正在使用它。有什么办法不剥离脚本标签?

当您将html传递给$()时,脚本标签混乱了。不过,它不会删除它们 - 它只会将它们添加到您的HTML产生的DOM集合中。尝试以下操作:

    var dom = $(data);
    dom.filter('script').each(function(){
        $.globalEval(this.text || this.textContent || this.innerHTML || '');
    });
    $('#mydiv').html(dom.find('#something').html());

最新更新