修改通过jQuery.ajax加载的脚本()
问题描述:
是否可以将id
添加到通过jQuery.ajax();
加载的脚本的<script>
标记中?修改通过jQuery.ajax加载的脚本()
这是我如何加载脚本:
$.ajax({
type: "POST",
url: 'js/script.js',
dataType: 'script',
success: function() {
// do something
}
});
我需要的是能够识别脚本为未来的互动。
我知道我可以可能使用dataType: 'text'
,然后我自己<script></script>
标签内有id
添加内容,自己将其添加到DOM ......但如果我能避免这种情况,我会很高兴: )
在此先感谢。
答
使用此技术,脚本不会添加到DOM。
dataType "script": Evaluates the response as JavaScript and returns it as plain text.
评估一次,从延迟加载脚本函数和变量将继续提供给浏览器:相反,随着documentation说,返回的JavaScript进行评估。因此,清理代码是的唯一途径从窗口范围删除功能(S):
delete window.myFunctionName;
一旦完成,调用函数或试图访问任何定义的变量它将返回:
ReferenceError: myFunctionName is not defined
ReferenceError: variableName is not defined
脚本加载并运行后,未经修改的文本内容(或将其从DOM中删除)不会影响脚本。你想做什么? – 2014-10-27 17:53:28
不知道我说得对。我想要做的是稍后重新载入相同的脚本(相同的函数等),但JS本身被一些服务器端脚本修改。基本上我想在再次添加它之前从DOM中删除它。 – MrUpsidown 2014-10-27 17:56:19
如果有人可以确认...... Thx! – MrUpsidown 2014-10-27 23:18:06