Javascript document.getElementById(';AnyName';).innerHTML=内容不适用于IE或Safari,但适用于Chrome和Firefox

Javascript document.getElementById(';AnyName';).innerHTML=内容不适用于IE或Safari,但适用于Chrome和Firefox,javascript,internet-explorer,safari,innerhtml,Javascript,Internet Explorer,Safari,Innerhtml,在用户做出若干选择后,忙于构建图形。我正在使用javascript替换div的内部HTML,以完成不同的步骤,具体如下所示: document.getElementById('AnyName').innerHTML = content; 这可以在Chrome和Firefox中使用,但不能在Safari或IE中使用 目前,内容的定义大致如下,仅举一个例子: var content = (function () {/* <div class="selectNavbar">

在用户做出若干选择后,忙于构建图形。我正在使用javascript替换div的内部HTML,以完成不同的步骤,具体如下所示:

document.getElementById('AnyName').innerHTML = content;
这可以在Chrome和Firefox中使用,但不能在Safari或IE中使用

目前,内容的定义大致如下,仅举一个例子:

var content = (function () {/*
    <div class="selectNavbar">
    Some HTML and other stuff here
    </div>
*/}).toString().match(/[^]*\/\*([^]*)\*\/\}$/)[1];
var content=(函数(){/*
这里有一些HTML和其他东西
*/}).toString().match(/[^]*\/\*([^]*)\*\/\}$/)[1];
我曾尝试用value/textContent替换innerHTML,因为我看到有些人在Safari上遇到了问题,这似乎可以解决问题,但页面仍然无法加载新的HTML

我也使用了,但似乎只有我使用了草率的风格,我不认为这是这里的问题

提前感谢
如果有人需要,我可以链接所有代码,但是可以在上面提到的链接中查看源代码。

我建议您先浏览一下

我不知道你当初为什么选择
innerHTML
。 我看到了你的页面的javascript,看起来你所做的只是更新文本值

innerHTML
用于将元素放入另一个元素或从中获取元素
您可以使用
innerText
textContent
解决您的问题
textContent
只能在IE11上使用,因此最好使用
innerText

或者做类似的事情

var divElement=document.getElementById('id');
var value=document.getElementById('someotherid');
if(divElement.textContent)
  divElement.textContent=value;
else 
  divElement.innerText=value;

我建议你先做这件事

我不知道你当初为什么选择
innerHTML
。 我看到了你的页面的javascript,看起来你所做的只是更新文本值

innerHTML
用于将元素放入另一个元素或从中获取元素
您可以使用
innerText
textContent
解决您的问题
textContent
只能在IE11上使用,因此最好使用
innerText

或者做类似的事情

var divElement=document.getElementById('id');
var value=document.getElementById('someotherid');
if(divElement.textContent)
  divElement.textContent=value;
else 
  divElement.innerText=value;

我建议你先做这件事

我不知道你当初为什么选择
innerHTML
。 我看到了你的页面的javascript,看起来你所做的只是更新文本值

innerHTML
用于将元素放入另一个元素或从中获取元素
您可以使用
innerText
textContent
解决您的问题
textContent
只能在IE11上使用,因此最好使用
innerText

或者做类似的事情

var divElement=document.getElementById('id');
var value=document.getElementById('someotherid');
if(divElement.textContent)
  divElement.textContent=value;
else 
  divElement.innerText=value;

我建议你先做这件事

我不知道你当初为什么选择
innerHTML
。 我看到了你的页面的javascript,看起来你所做的只是更新文本值

innerHTML
用于将元素放入另一个元素或从中获取元素
您可以使用
innerText
textContent
解决您的问题
textContent
只能在IE11上使用,因此最好使用
innerText

或者做类似的事情

var divElement=document.getElementById('id');
var value=document.getElementById('someotherid');
if(divElement.textContent)
  divElement.textContent=value;
else 
  divElement.innerText=value;

您应该在head标记下使用下面的代码段。它解决了在IE11中将数据附加到innerhtml的问题:

<meta http-equiv="X-UA-Compatible" content="IE=11" />

您应该在head标记下使用下面的代码段。它解决了在IE11中将数据附加到innerhtml的问题:

<meta http-equiv="X-UA-Compatible" content="IE=11" />

您应该在head标记下使用下面的代码段。它解决了在IE11中将数据附加到innerhtml的问题:

<meta http-equiv="X-UA-Compatible" content="IE=11" />

您应该在head标记下使用下面的代码段。它解决了在IE11中将数据附加到innerhtml的问题:

<meta http-equiv="X-UA-Compatible" content="IE=11" />



Hi Madhan,里面有很多HTML,这就是我选择innerHTML的原因,我会尝试innerText和textContent并告诉你。Hi Madhan,你似乎错过了我页面的javascript,因为你知道在尝试插入HTML时innerText会失败。里面有很多HTML标记,innertext仅用文本替换div,而不是HTML解析代码。看起来我正在查看源代码。您正在测试的IE版本是什么?我目前正在使用IE 9。我已经用IE 11测试过,网站运行良好。网站的构建方式也需要改进。innerHTML和innerText根据w3c标准不推荐使用。试着使用
appendChild
insertBefore
如果你仍然想使用innerHTML,那么使用它似乎是一个解决办法,或者使用它有一个简单的代码来实现这一点Hi-Madhan,里面有很多HTML,这就是为什么我选择innerHTML的原因,我会尝试innerText和textContent并让你知道。Hi-Madhan,您似乎错过了我的页面的javascript,因为您知道在尝试插入HTML时innertext会失败。里面有很多HTML标记,innertext仅用文本替换div,而不是HTML解析代码。看起来我正在查看源代码。您正在测试的IE版本是什么?我目前正在使用IE 9。我已经用IE 11测试过,网站运行良好。网站的构建方式也需要改进。innerHTML和innerText根据w3c标准不推荐使用。试着使用
appendChild
insertBefore
如果你仍然想使用innerHTML,那么使用它似乎是一个解决办法,或者使用它有一个简单的代码来实现这一点Hi-Madhan,里面有很多HTML,这就是为什么我选择innerHTML的原因,我会尝试innerText和textContent并让你知道。Hi-Madhan,您似乎错过了我的页面的javascript,因为您知道在尝试插入HTML时innertext会失败。里面有很多HTML标记,innertext仅用文本替换div,而不是HTML解析代码。看起来我正在查看源代码。你正在测试哪个版本的IE?我现在正在使用IE 9。我已经用IE 11测试过了,网站运行良好。还有网站的运行方式