我有一堆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正在用我所有的脚本剥离垃圾来杀死我。
由于
答案 0 :(得分:2)
那是因为它试图在iterate (\c -> c + 2) 0
的对象中找到脚本标记而不是其标记名为脚本的子元素。
过滤器从所选元素中选择元素的子集。这里是[0,2,4,6,....]
。
您需要将过滤功能修改为:
#specificDiv