为什么可以';t我使用Chrome查看/调试加载jquery.html()的javascript

为什么可以';t我使用Chrome查看/调试加载jquery.html()的javascript,javascript,jquery,ajax,debugging,google-chrome,Javascript,Jquery,Ajax,Debugging,Google Chrome,我正在一个$.post回调上加载带有内联javascript的html。类似“那样”的东西:-) 回调{ response_data='带有html和var脚本的字符串…' jQuery(“#选择器”).html(响应数据); } 但当我这样做时,我看不到Chrome的脚本选项卡上加载的新内联javascript。我在网络选项卡上看到JS,JS正在执行,但我无法调试这段代码 你知道如何调试这段代码吗?谢谢 所有现代JS引擎都允许“在代码中”生成javascript断点 为此,您需要执行调试器代

我正在一个$.post回调上加载带有内联javascript的html。类似“那样”的东西:-)

回调{
response_data='带有html和var脚本的字符串…'
jQuery(“#选择器”).html(响应数据);
}
但当我这样做时,我看不到Chrome的脚本选项卡上加载的新内联javascript。我在网络选项卡上看到JS,JS正在执行,但我无法调试这段代码


你知道如何调试这段代码吗?谢谢

所有现代JS引擎都允许“在代码中”生成javascript断点

为此,您需要执行
调试器代码中某个地方的语句。一旦js引擎读取该命令,就会设置断点并加载调试器

你可能想试一试。它可能仍然不能正常工作,因为动态脚本插入仍然是一件麻烦和痛苦的事情,这取决于您如何以及何时进行插入

通过创建和插入一个新的
脚本元素

var myscript = document.createElement('script');
myscript.textContent = 'var scripts = 42; alert("hello");';
myscript.type = 'text/javascript';

document.body.appendChild(myscript);

查看
控制台选项卡
,右键单击并选择check XMLHttpRequest,因为我认为浏览器不会侦听异步调用来更新调试器中可用文件的列表;这是个好机会。无论如何,我将所有JS移到.JS文件来解决它:)
var myscript = document.createElement('script');
myscript.textContent = 'var scripts = 42; alert("hello");';
myscript.type = 'text/javascript';

document.body.appendChild(myscript);