Javascript IE9 Can';找不到合适的DOM元素

Javascript IE9 Can';找不到合适的DOM元素,javascript,html,Javascript,Html,我有一个带有的HTML表,我正在尝试动态更新它。在Firefox中,此脚本执行良好: dataTableFooter = document.getElementById('dataTable').getElementsByTagName('tfoot'); dataTableFooter[0].innerHTML = "This is the footer"; 但是,在IE中,返回以下错误: SCRIPT600: Invalid target element for this operat

我有一个带有
的HTML表,我正在尝试动态更新它。在Firefox中,此脚本执行良好:

 dataTableFooter = document.getElementById('dataTable').getElementsByTagName('tfoot');
 dataTableFooter[0].innerHTML = "This is the footer";
但是,在IE中,返回以下错误:

SCRIPT600: Invalid target element for this operation. 
在FF中导航DOM:

在IE中,我们可以看到元素的结构是以不同的方式创建的,因此
dataTableFooter[0]。innerHTML
将无效:

我无法将id分配给我的表尾,因为它是通过Alloy UI框架生成的,并且始终是随机的,否则这不会是一个问题-关于如何检索此
元素和设置
innerHTML
的跨浏览器解决方案


更新:这是IE9中的一个问题,特别是在

下,我假设您的目标是IE9,因为这在IE10+中不是问题

在IE9中,可以清除tfoot的
innerHTML
,但不能设置它。但是,您可以创建新元素并将其作为子元素附加:

var dataTableFooter= document.getElementById('dataTable').getElementsByTagName('tfoot');

var div= document.createElement('td');
div.innerHTML= 'This is the footer';
dataTableFooter[0].innerHTML= '';
dataTableFooter[0].appendChild(div);

我假设您的目标是IE9,因为这在IE10+中不是问题

在IE9中,可以清除tfoot的
innerHTML
,但不能设置它。但是,您可以创建新元素并将其作为子元素附加:

var dataTableFooter= document.getElementById('dataTable').getElementsByTagName('tfoot');

var div= document.createElement('td');
div.innerHTML= 'This is the footer';
dataTableFooter[0].innerHTML= '';
dataTableFooter[0].appendChild(div);

我假设您的目标是IE9,因为这在IE10+中不是问题

在IE9中,可以清除tfoot的
innerHTML
,但不能设置它。但是,您可以创建新元素并将其作为子元素附加:

var dataTableFooter= document.getElementById('dataTable').getElementsByTagName('tfoot');

var div= document.createElement('td');
div.innerHTML= 'This is the footer';
dataTableFooter[0].innerHTML= '';
dataTableFooter[0].appendChild(div);

我假设您的目标是IE9,因为这在IE10+中不是问题

在IE9中,可以清除tfoot的
innerHTML
,但不能设置它。但是,您可以创建新元素并将其作为子元素附加:

var dataTableFooter= document.getElementById('dataTable').getElementsByTagName('tfoot');

var div= document.createElement('td');
div.innerHTML= 'This is the footer';
dataTableFooter[0].innerHTML= '';
dataTableFooter[0].appendChild(div);

谢谢Rick,这种方法在IE9和FF中都有效-你对此问题有任何参考资料吗?我没有找到任何官方资料,但之前在stackoverflow上出现过:谢谢Rick,这种方法在IE9和FF中都有效-你对此问题有任何参考资料吗?我没有找到任何官方资料,但是之前在stackoverflow上出现过:谢谢Rick,这个方法在IE9和FF中都有效-你在这个问题上有任何参考资料吗?我没有发现任何官方的,但之前在stackoverflow上出现过:谢谢Rick,这个方法在IE9和FF中都有效-你在这个问题上有任何参考资料吗?我没有发现任何官方的东西,但是以前在stackoverflow上出现过:尝试jQuery来消除浏览器行为中的不一致,特别是