div标签中的Innerhtml不起作用

时间:2011-05-05 08:54:41

标签: javascript html

我正试图找出一个刚停止工作的网站上的问题。

这有点棘手,因为我目前没有服务器访问权限,而且这是一个我必须快速解决问题的系统。

基本上一个看起来像网站上的javascript面板的部分已经消失了 - 我正试图找出原因。

我正在使用firebug尝试跟踪它。

标签上的“innerhtml”内的任何内容都被忽略了,如果我把一些内容放在innerhtml之外呢!

例如

<div id="slide-browser-country-info" innerhtml="&lt;div&gt;&lt;!-- p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Verdana} span.s1 {letter-spacing: 0.0px} --&gt; &lt;p&gt;In Spanish schools English lessons are mandatory. Good English is seen as such a key skill that many children take extra English lessons at privately-run Academia de Inglés. While you’ll need advanced qualifications and many years’ experience to find work in state-run schools, the Academias often employ less experienced teachers. It’s also worth thinking about teaching private English lessons.&lt;/p&gt;&lt;/div&gt;">this will show</div>

以下是问题页面http://www.teflcourses.fr/tefl-jobs-abroad/

这是一个应该做什么的例子http://www.onlinetefl.com/tefl-jobs-abroad/

我可以看到内容实际上存在于代码中,所以我只想弄清楚什么可能导致innerhtml被忽略。

2 个答案:

答案 0 :(得分:0)

你通过javascript使用innerHtml,而不是你在这里尝试过的声明。将内容放在div标签中,并使用javascript函数动态添加。

答案 1 :(得分:0)

`I'm trying to figure out an issue on a site which has just stopped working.`

打开您提供的链接后,我观察了浏览器如何显示此页面:

  • 此网站无法使用最新的浏览器。
  • 此网站在IE7及以下版本的开发过程中进行了测试。
  • 此网站适用于IE6和EI7

    It seems to be anything within "innerhtml" on a tags is bieng ignored, if I put some content outside of innerhtml it shows!

正如我的观察一样,将内容放到innerHTML attribute不能使用最新的浏览器。我猜innerHTML属性为deprecated\remove\not included\not valid,最新。但是当然你仍然可以使用innerHTML作为属性。

然后在浏览js代码时,我发现问题是由此导致的。

jQuery( '#slide-browser-country-list' ).attr( 'innerHTML', cList );

这应该是:

jQuery( '#slide-browser-country-list' ).html(cList);

注意:我的搜索使用此功能返回多个。