"-6ren"> "-美好的一天, 我正在开发一个 C# Web 应用程序,一切正常,直到我添加普通的 JavaScript。 html代码如下: JScript.js是放入的 JavaS-6ren">
gpt4 book ai didi

javascript - HTML1527 : DOCTYPE expected. 最短的有效文档类型是 "<!DOCTYPE html>"

转载 作者:行者123 更新时间:2023-12-03 11:27:06 28 4
gpt4 key购买 nike

美好的一天,

我正在开发一个 C# Web 应用程序,一切正常,直到我添加普通的 JavaScript。

html代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="scripts/JScript.js" type="text/javascript"></script>
<asp:ContentPlaceHolder id="headContent" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>

<asp:ContentPlaceHolder id="title" runat="server"></asp:ContentPlaceHolder>
<asp:ContentPlaceHolder id="bodyContent" runat="server"></asp:ContentPlaceHolder>
<!-- some code here -->
</body>

JScript.js是放入的 JavaScript。

JavaScript代码如下:

function getCookie(catId) {
var ebRand = Math.random() + '';
ebRand = ebRand * 1000000;

document.write('<scr' + 'ipt src="HTTP://bs.serving-sys.com/Serving/ActivityServer.bs?cn=as&amp;ActivityID=553971&amp;rnd=' + ebRand + '"></scr' + 'ipt>');
}

当点击链接按钮时,将触发此 JavaScript 函数。

我在 IE 中遇到错误,但 Chrome 和 Mozilla 工作正常。

我在 IE 控制台中的错误是 HTML1527: DOCTYPE expected. The shortest valid doctype is "<!DOCTYPE html>".

在 Google 中搜索后,我尝试输入

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

新的DOCTYPE ,但它也不起作用。

我已经尝试过

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

里面<head></head>

但是我在 IE 中仍然遇到同样的错误。

问题出在 ContentPlaceHolder

除此之外,我还需要使用 W3C 标记验证服务对地址进行一些验证:

http://validator.w3.org/check?uri=HTTP%3A%2F%2Fbs.serving-sys.com%2FServing%2FActivityServer.bs%3Fcn%3Das%26amp%3BActivityID%3D553971%26amp%3Brnd%3D20079.082210606393&charset=%28detect+automatically%29&doctype=Inline&group=0

然后转到http://validator.w3.org/check输入 <script src="HTTP://bs.serving-sys.com/Serving/ActivityServer.bs?cn=as&amp;ActivityID=553971&amp;rnd=20079.082210606393"></script>也是如此。

但不明白验证结果意味着什么。

What I get from IE script console请指教。

最佳答案

IE 发出关于 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">警告 ,因为这样的字符串是 not a valid doctype according to HTML5 。这样的警告对任何事情都没有影响。这只是 HTML5 传播的一部分。

将其更改为 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 后,该问题已被删除。但您可能看到了使用某些文档类型错误的缓存副本的结果。使用新文件(使用新名称)进行测试应该可以解决此问题。

当然,这样的代码无法验证,因为 ASP 标记按字面意思理解并解释为 body内容,但那是另一个问题。

实际的做法是使用<!DOCTYPE html>正如建议的那样。例如,如果您仍然希望根据 XHTML 1.0 规范进行验证,则可以使用验证器的用户界面覆盖文档类型来执行此操作。

但这不是一个大问题;您也可以忽略该警告。如果您遇到一些功能错误,则这些错误是由其他原因引起的,应单独询问,并提供足够的数据。

关于javascript - HTML1527 : DOCTYPE expected. 最短的有效文档类型是 "&lt;!DOCTYPE html>",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26871413/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com