Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript getElementsByTagName在IE9中不工作_Javascript - Fatal编程技术网

Javascript getElementsByTagName在IE9中不工作

Javascript getElementsByTagName在IE9中不工作,javascript,Javascript,我想用粗体替换span内容,以便向用户突出显示,因此我使用getElementsByTagName获取标记,并替换为新的粗体文本,在chrome中可以正常工作,但在IE9中不能 var span = document.getElementById("testId").getElementsByTagName("a")[0].getElementsByTagName("span")[0].innerHTML; var newBoldSpan = "<b>" + span + "<

我想用粗体替换span内容,以便向用户突出显示,因此我使用getElementsByTagName获取标记,并替换为新的粗体文本,在chrome中可以正常工作,但在IE9中不能

var span = document.getElementById("testId").getElementsByTagName("a")[0].getElementsByTagName("span")[0].innerHTML;
var newBoldSpan = "<b>" + span + "</b>";
document.getElementById("testId").getElementsByTagName("a")[0].innerHTML = newBoldSpan;
var span=document.getElementById(“testId”).getElementsByTagName(“a”)[0]。getElementsByTagName(“span”)[0]。innerHTML;
var newBoldSpan=“”+span+”;
document.getElementById(“testId”).getElementsByTagName(“a”)[0]。innerHTML=newBoldSpan;
但在IE 9上,getElementById不返回任何标记,因此在使用getElementsByTagName(“a”)时无法定义
有人能帮我吗?

如果您有任何无效标记,例如标记中包含的其他标记,则可以知道Internet Explorer中的getElementsByTagName失败

您可能还想查看一下语法,以确保它是正确的。你能把相关的html也包括进去吗

编辑: 所以,我可以看到你的id是错误的,但这对IE和Chrome都是无效的,所以它可能不是你在实际代码中运行的id

它可能会帮助您分解代码:

var li=document.getElementById(“product_11998”);
console.log('li',li);
var a=li.getElementsByTagName(“a”)[0];
console.log('a',a);
var span=a.getElementsByTagName(“span”)[0].innerHTML;
console.log('span',span);
var newBoldSpan=“”+span+”;

document.getElementById(“product_11998”).getElementsByTagName(“a”)[0]。innerHTML=newBoldSpan我首先使用li.getElementsByTagName而不是document.getElementById解决了我的问题,然后对它进行迭代以找到我想要的元素,并通过添加粗体标记突出显示,这就是jQuery真正好用的地方:)
    • 将第一行分成三个部分,并检查其中哪一部分实际上不起作用。