Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.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
W3使用一行javascript代码验证html错误_Javascript_Html_Validation - Fatal编程技术网

W3使用一行javascript代码验证html错误

W3使用一行javascript代码验证html错误,javascript,html,validation,Javascript,Html,Validation,我在validator.W3.org中遇到以下错误 第70行第26列:字符“您正在验证一个XHTML文档,所以 就我个人而言,我不知道在这个时代为什么要使用XHTML,但不管怎样。你在验证一个XHTML文档,所以 就我个人而言,我不知道在今天这个时代为什么要使用XHTML,但不管怎样。如果要验证为XHTML,请尝试将JavaScript包装在块中: 如果要验证为XHTML,请尝试将JavaScript包装在块中: 您使用的是严格的XHTML,因此,如果要将XML语法中的所有字符用作文本,

我在validator.W3.org中遇到以下错误


第70行第26列:字符“您正在验证一个XHTML文档,所以



就我个人而言,我不知道在这个时代为什么要使用XHTML,但不管怎样。

你在验证一个XHTML文档,所以



就我个人而言,我不知道在今天这个时代为什么要使用XHTML,但不管怎样。

如果要验证为XHTML,请尝试将JavaScript包装在
块中:


如果要验证为XHTML,请尝试将JavaScript包装在
块中:


您使用的是严格的XHTML,因此,如果要将XML语法中的所有字符用作文本,则必须对其进行正确转义。在XHTML中,通常的方法是使用CDATA块,该块以与HTML兼容的方式转义:

<script type="text/javascript">//<![CDATA[
function secondPassed() {
var minutes = Math.round((seconds - 30)/60);
var remainingSeconds = seconds % 60;
if (remainingSeconds < 10) {
    remainingSeconds = "0" + remainingSeconds;  
}
//]]></script>
//
但是,有两个更好的修复方法:

  • 使用HTML5(
    ),而不是XHTML
  • 使用外部脚本,

两者都是更好的做法。

您使用的是严格的XHTML,因此,如果您想将XML语法中的所有字符用作文本,则必须对它们进行正确的转义。在XHTML中,通常的方法是使用CDATA块,该块以与HTML兼容的方式进行转义:

<script type="text/javascript">//<![CDATA[
function secondPassed() {
var minutes = Math.round((seconds - 30)/60);
var remainingSeconds = seconds % 60;
if (remainingSeconds < 10) {
    remainingSeconds = "0" + remainingSeconds;  
}
//]]></script>
//
但是,有两个更好的修复方法:

  • 使用HTML5(
    ),而不是XHTML
  • 使用外部脚本,


两者都是更好的练习。

你的doctype是什么?这是在
块中吗?doctype添加在start post中。是的,我使用脚本块。也添加在start post中。使用外部脚本。你的doctype是什么?这是在
块中吗?doctype添加在start post中。是的,我使用脚本块。也添加在start post中。使用外部脚本。I在我的网站上使用其他Java脚本,这些脚本不会给出错误,而且我没有在那里使用CDATA。Thnx作为提示!@user2838753您可能在其他页面中没有严格的XHTML doctype。真的,如果您没有XHTML的特殊原因,只需使用HTML5 doctype即可。@user2838753:或者,您可能只是没有使用
de>&该页面脚本中的运算符或字符。我在我的网站上使用其他Java脚本,这些脚本不会出现错误,而且我没有在那里使用CDATA。Thnx作为提示!@user2838753您可能在其他页面中没有严格的XHTML doctype。真的,如果您没有XHTML的特殊原因,请使用HTML5 doctype。@user2838753:Alt或者,您可能只是没有在该页面的脚本中使用
,或者
&
运算符或字符。是的,我第一次使用HTML5,当我将其更改为xHTML时,出现了此错误。我读了一些关于xHTML与HTML5的讨论。对于某些网站,xHTML更好(他们说)@user2838753:这几乎是不可能的。如果你想限制自己使用HTML4元素和属性以实现兼容性,你可以在HTML5中这样做。你也可以添加尾随的
/>
以作废标记作为样式选择。不过,无论哪种方式,使用外部脚本都可以巧妙地解决问题并减少负载,因为外部脚本可以缓存。此时我使用PHP包含javascript。但如果我将其更改为.js外部脚本,脚本将不再工作?!是的,我第一次使用HTML5,当我将其更改为xHTML时,出现了此错误。我阅读了一些关于xHTML与HTML5的讨论。对于某些网站,xHTML更好(他们说)@user2838753:这几乎是不可能的。如果你想限制自己使用HTML4元素和属性以实现兼容性,你可以在HTML5中这样做。你也可以添加尾随的
/>
以作废标记作为样式选择。不过,无论哪种方式,使用外部脚本都可以巧妙地解决问题并减少负载,因为外部脚本可以缓存。此时我使用PHP包含javascript。但是如果我将其更改为.js外部脚本,脚本将不再工作?!
<script type="text/javascript">
function secondPassed() {
var minutes = Math.round((seconds - 30)/60);
var remainingSeconds = seconds % 60;
if (remainingSeconds < 10) {
    remainingSeconds = "0" + remainingSeconds;  
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<script>
  <![CDATA[
  // JavaScript goes here
  ]]>
</script>
<script type="text/javascript">//<![CDATA[
function secondPassed() {
var minutes = Math.round((seconds - 30)/60);
var remainingSeconds = seconds % 60;
if (remainingSeconds < 10) {
    remainingSeconds = "0" + remainingSeconds;  
}
//]]></script>