XHTML Strict无效,因为Javascript中有html标记

XHTML Strict无效,因为Javascript中有html标记,javascript,xhtml,tags,validation,strict,Javascript,Xhtml,Tags,Validation,Strict,我正在使用XHTML严格标记创建一个站点。在html中,我需要放置一个js脚本: <script type="text/javascript"> $(document).ready(function () { $('#nav li#nav-strona-glowna').append('<a href="/platinium/" class="hover active"><span>Strona glowna</span></a>')

我正在使用XHTML严格标记创建一个站点。在html中,我需要放置一个js脚本:

<script type="text/javascript">

$(document).ready(function () { $('#nav li#nav-strona-glowna').append('<a href="/platinium/" class="hover active"><span>Strona glowna</span></a>');

</script>   

$(文档).ready(函数(){$('navli'navstronaglowna').append('');
不幸的是,xhtml不再有效,因为此脚本中有一个“”标记。如何在不删除它的情况下验证xhtml?

从该MDC页面窃取的示例:

<script type="text/javascript">
 //<![CDATA[
  var i = 0;

  while  (++i < 10)
  {
    // ...
  }
 //]]>
</script>

//
一般来说,最好通过将JS(和CSS)放在外部文件中来避免这个问题。

试试:

<script type="text/javascript">
  <![CDATA[
      $(document).ready(function () { $('#nav li#nav-strona-glowna').append('<a href="/platinium/" class="hover active"><span>Strona glowna</span></a>');
  ]]>
</script>


//
我建议您找到在页面中注入HTML的方法,而不直接涉及在JavaScript中编写HTML标记。如果您将内容、表示和行为分开,您与web设计师的关系将更加牢固、更加合作、富有成效

但对于那些不可能的情况,CDATA包装将阻止浏览器将JavaScript解析为HTML


请记住,他们称之为HTML严格版是有原因的。

Update

您的代码中有一个问题,它缺少一个右大括号和圆括号。可能是打字错误

关于XHTML验证,最好的选择是将JavaScript放在一个单独的文件中。如果失败,请在脚本周围添加一个CDATA部分:

<script type="text/javascript">
//<![CDATA[
    $(document).ready(function () { $('#nav li#nav-strona-glowna').append('<a href="/platinium/" class="hover active"><span>Strona glowna</span></a>'); });
//]]>
</script>

//
请注意,JavaScript注释适用于IE等不将XHTML解析为XML的浏览器。请参见
应该修复您的问题

验证器到底给您出了什么错误?您发布的代码看起来非常有效

顺便说一句,如果出于某些非常具体的原因您不需要XHTML

()


你最好只使用HTML4或HTML5,你也可以使用它们生成有效的代码。

这是正确的,这正是我一直喜欢纯HTML的原因。问题是我尝试了所有这些解决方案,但都不管用,问题仍然存在,我不能将js放在单独的文件中,因为它的内容是由php@David:W问题到底出在哪里?你用什么来验证你的XHTML?好吧,我在本地服务器上有这个网站,所以我不能放一个链接,不管怎样,我使用一个ff插件来验证代码wchih肯定有一个bug,因为我把所有的源代码都放在上面,它会像charm:D thanx那样验证答案
<script type="text/javascript">
//<![CDATA[
    $(document).ready(function () { $('#nav li#nav-strona-glowna').append('<a href="/platinium/" class="hover active"><span>Strona glowna</span></a>'); });
//]]>
</script>
<script type="text/javascript"><![CDATA[
// your code
]]></script>