通过ajax加载内容时,不会加载内部引用的javascript

通过ajax加载内容时,不会加载内部引用的javascript,javascript,jquery,ajax,asp.net-core,content-security-policy,Javascript,Jquery,Ajax,Asp.net Core,Content Security Policy,我正在通过ajax调用更新div内容。我得到的响应(html)包含对内部JavaScript文件的引用 未加载引用的javascript。我怎样才能解决这个问题 下面是我如何将其设置为div document.getElementById('content-wrapper').innerHTML = data; 当我使用jQuery的.html()函数设置内容时,文件被正确加载。但为此,我们必须在内容安全策略中禁用“不安全评估”。因此jQuery不是一个选项 @mplungjan的回答确实有

我正在通过ajax调用更新div内容。我得到的响应(html)包含对内部JavaScript文件的引用

未加载引用的javascript。我怎样才能解决这个问题

下面是我如何将其设置为div

 document.getElementById('content-wrapper').innerHTML = data;
当我使用jQuery的.html()函数设置内容时,文件被正确加载。但为此,我们必须在内容安全策略中禁用“不安全评估”。因此jQuery不是一个选项

@mplungjan的回答确实有帮助,但我的理解力正在下降 试试这个

const wrapper = document.getElementById('content-wrapper')
wrapper.innerHTML = data;
const scr = wrapper.querySelector("script");
const newScr = document.createElement("script");
newScr.src = scr.src;
try {
  document.head.appendChild(newScr)
} catch (e) {
  console.log("nope")
}
const data=`这是一个嵌入字符串中的脚本`
const wrapper=document.getElementById('content-wrapper')
wrapper.innerHTML=数据;
const scr=wrapper.querySelector(“脚本”);
const newScr=document.createElement(“脚本”);
newScr.src=scr.src;
console.log(newScr.src);
//这是为了处理文档。请使用此特定脚本编写
const myWrite=document.write;
document.write=函数(str){
wrapper.innerHTML+=str
}
试一试{
document.head.appendChild(newScr)
}捕获(e){
console.log(“nope”)
}


这是否回答了您的问题?有关更多脚本:
[…wrapper.querySelectorAll(“script”)].forEach(script=>{if(scripts.src!=“”){…})
在生产中移动代码后,我在编辑中遇到了错误。。你能给我提些建议吗。你是索尔。使用iframeiframe存在安全风险。。这就是为什么我不能使用它的原因。那么我能想到的唯一解决办法就是将页面包含在您已有的html中。如果代理来自其他站点,则可以使用代理