jquery过滤器方法删除脚本标记

时间:2014-01-24 10:26:32

标签: jquery

我对一些返回一些html的url进行ajax调用,我想在DOM中的某个部分使用html。因此,在从服务器检索数据的地方,我使用filter方法去除不需要的html并在DOM中插入所需的html。但是因为看起来里面需要html的脚本标签被删除了。我认为过滤方法正在做一些事情。有没有办法不删除脚本标签?

1 个答案:

答案 0 :(得分:1)

当你将HTML传递给$()时,jQuery会混淆SCRIPT标签。它不会删除它们 - 它只是将它们添加到从HTML生成的DOM集合中。试试这个:

    var dom = $(data);

    dom.filter('script').each(function(){
        $.globalEval(this.text || this.textContent || this.innerHTML || '');
    });

    $('#mydiv').html(dom.find('#something').html());