从特定div过滤并执行脚本

时间:2016-04-22 06:08:23

标签: javascript jquery

我有一堆html(div和脚本)进入ajax响应。目前我可以过滤所有脚本并执行它:

$(response).filter("script").each(function (i) {
        eval($(this).text());
});

我需要的是一种仅从响应中的特定DIV执行脚本的方法。我怎样才能做到这一点?如果我做这样的事情,JQuery似乎剥离了所有脚本:

$(response).filter("#specificDiv").filter("script").each(function (i) {
                            eval($(this).text());
                        });

不起作用,来自'specificDiv'的所有脚本都被jQuery剥离。

JQuery正在用我所有的脚本剥离垃圾来杀死我。

由于

1 个答案:

答案 0 :(得分:2)

那是因为它试图在iterate (\c -> c + 2) 0 的对象中找到脚本标记而不是其标记名为脚本的子元素。 过滤器从所选元素中选择元素的子集。这里是[0,2,4,6,....]

您需要将过滤功能修改为:

#specificDiv