2
我拉一个AJAX响应HTML字符串使用jQuery。当我将这个响应附加到文档时,我有一些碰撞脚本,所以我想删除它,并且只有在删除了有问题的原始脚本后才放置它。jQuery的查找脚本标记在AJAX响应字符串
这里是我的代码(位于阿贾克斯成功功能):
var content = $(response).find('.content').html();
var scripts = $(content).find('script');
console.log(scripts);
此代码返回0脚本。但是,当我这样做时:
var content = $(response).find('.content').html();
var scripts = $(content).find('h3'); //PULLING H3s INSTEAD OF SCRIPT TAGS
console.log(scripts);
它返回该字符串中的所有h3's。这里发生了什么?
我可以证实,该剧本在响应字符串。
感谢所有帮助。我最终在文档中使用隐藏的输入,然后在这些值上使用$ .getScript()。一切都在工作,现在。
脚本标签被剥离,当你做'$(响应)'执行。相反,您应该使用正则表达式将div标签替换为脚本标签,然后在将其转换为DOM节点后,选择所述div,迭代它们并处理它们。或者,不要在html中包含脚本标记,而是使用javascript请求。这就是我要做的事情,它远没有那么容易出错。 –
我不想在HTML中包含脚本,但它适用于想要幻灯片样式网站的客户端,其中网页使用AJAX加载。很多这些页面都有脚本。我不确定正确的做法。 – Shane