javascript - 从特定 div 过滤并执行脚本

标签 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());
                        });

这不起作用,'specicDiv' 中的所有脚本都被 jQuery 剥离。

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

谢谢

最佳答案

这是因为它试图在 #specicDiv 的对象中查找脚本标记,而不是其具有标记名作为脚本的子元素。 过滤器从所选元素中选择元素的子集。这里是#specicDiv

您需要将过滤器函数修改为:

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

关于javascript - 从特定 div 过滤并执行脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36786137/

相关文章:

javascript - 猫头鹰旋转木马-点击下一步图片

javascript - 如何从代码隐藏中调用 IFrame 中的 JS 函数

javascript - 选项卡或窗口之间的通信

javascript - 如何在js中获取未选中的复选框?

javascript - 对元素的显示属性的更改进行一些操作

javascript - 显示两个 jQuery 叠加层

javascript - 如何在 chart.js 中从最高到最低对数据进行排序

javascript - 从 iframe 检索 PDF

javascript - 如何进行线性插值?

javascript - 在加载新页面之前停止 js 循环