如何改变<;脚本>;来自脚本的id-Javascript

如何改变<;脚本>;来自脚本的id-Javascript,javascript,firebug,Javascript,Firebug,我想在标记指向的外部脚本中更改标记的id。这样做的正确方式是什么 这是我的脚本标签: <script id="ID1" type="text/javascript" src="PATH_TO_EXTERNAL_JS"></script> 然而,当我在firebug中查看live DOM树时,我看到DOM中引用了两个脚本。一个是原始ID,一个是新ID 谢谢 我认为您应该修改代码,使之有点像这样: var i = 0 var sessionID = generateSess

我想在标记指向的外部脚本中更改标记的id。这样做的正确方式是什么

这是我的脚本标签:

<script id="ID1" type="text/javascript" src="PATH_TO_EXTERNAL_JS"></script>
然而,当我在firebug中查看live DOM树时,我看到DOM中引用了两个脚本。一个是原始ID,一个是新ID


谢谢

我认为您应该修改代码,使之有点像这样:

var i = 0
var sessionID = generateSessionID();
var scripts = document.getElementsByTagName('script');
var script = null;
for (i = 0; i < scripts.length; i++)
    if (scripts[i].src.toString() == 'PATH_TO_EXTERNAL_JS'){
        script = scripts[i];
        break;
    }

if (script)
    script.id = script.id + "_" + sessionID;
var i=0
var sessionID=generateSessionID();
var scripts=document.getElementsByTagName('script');
var脚本=null;
对于(i=0;i

换句话说。获取所有脚本元素,遍历此集合以查找具有某些已知属性(本例中为src)的元素,如果找到该元素,则将其设置为新id。

我认为您应该修改代码,如下所示:

var i = 0
var sessionID = generateSessionID();
var scripts = document.getElementsByTagName('script');
var script = null;
for (i = 0; i < scripts.length; i++)
    if (scripts[i].src.toString() == 'PATH_TO_EXTERNAL_JS'){
        script = scripts[i];
        break;
    }

if (script)
    script.id = script.id + "_" + sessionID;
var i=0
var sessionID=generateSessionID();
var scripts=document.getElementsByTagName('script');
var脚本=null;
对于(i=0;i
换句话说。获取所有脚本元素,遍历此集合以查找具有某些已知属性(本例中为src)的元素,如果找到该元素,则将其设置为新id。

使用

使用


如果您要这样做,您需要删除旧脚本。虽然迈克·刘易斯的答案有更好的方法

document.removeChild(originalScript)

如果您要这样做,您需要删除旧脚本。虽然迈克·刘易斯的答案有更好的方法

document.removeChild(originalScript)

为了澄清,您是在试图将特定脚本标记的ID从其指向的脚本中更改,还是在寻找一种方法来放入任何给定的外部脚本,以识别和修改引用它的标记?为了澄清,您是在试图将特定脚本标记的ID从其指向的脚本中更改,或者,您是否正在寻找一种方法来放入任何给定的外部脚本,该脚本将识别和修改引用它的标记?