Javascript eval()不';t执行外部(src=&x2026;)脚本
在完全重写div之后,我使用eval()执行所有Javascript eval()不';t执行外部(src=&x2026;)脚本,javascript,jquery,ajax,html,Javascript,Jquery,Ajax,Html,在完全重写div之后,我使用eval()执行所有标记 $(“#内容”).find(“脚本”).each(函数(){ eval($(this.text()); }); 它适用于内联脚本,但对以下脚本没有影响: 为什么?我可以“强制”浏览器加载并执行外部脚本吗?除了使用中的实际问题外,您还试图评估这些脚本标记中的.text,这基本上没有什么 加载标记时,它会将外部文件作为资源链接到页面并执行脚本。它不直接向dom呈现任何内容 因此,$(this).text()将返回“” 如果要重新加载外部脚本
标记
$(“#内容”).find(“脚本”).each(函数(){
eval($(this.text());
});
它适用于内联脚本,但对以下脚本没有影响:
为什么?我可以“强制”浏览器加载并执行外部脚本吗?除了使用中的实际问题外,您还试图
评估这些脚本标记中的.text
,这基本上没有什么
加载
标记时,它会将外部文件作为资源链接到页面并执行脚本。它不直接向dom呈现任何内容
因此,$(this).text()将返回“”
如果要重新加载外部脚本,则需要强制页面刷新,或者可能会更改拉入这些脚本的方式:例如。
$(“body”).css(“背景”、“银色”);
$(“按钮”)。单击(函数(){
$(“脚本[src^='data:'])。每个(函数(){
var script=document.createElement('script');
script.src=this.src;
document.body.appendChild(脚本);
})
});代码>
去吧
你不应该再使用Eval了。。几年前,当我尝试使用互联网时,我被互联网弄得眼花缭乱。给你注射。是的,我知道,但这是我知道的唯一解决办法。我尝试在ajax响应之后加载脚本$(this).text()包含什么内容?可能什么都没有,因为脚本
元素没有文本内容。您需要对脚本执行Ajax请求,读取脚本的文本内容,并调用eval
。@Whymarrh,不是完全重复的,因为@Qwertiy对不起,这里的jQuery差别不大。问题完全一样。对不起,不是这样的work@bildstein,如你所见,确实如此。