ASP.NET WebForms "Identifier expected" 错误

3

我将以下代码添加到了我的ASP.NET Web Forms应用程序中:

<link rel="stylesheet" href="css/icomoon.css" media="print" onload="this.media='all'">

这段代码位于Site.Master主页面中。

现在我遇到了一个错误:

需要标识符

如果我删除媒体和onload属性,就不会出现错误:

<link rel="stylesheet" href="css/icomoon.css">

有人知道如何修复这个问题吗?似乎是与服务端解析 onload 相关的问题,我不知道该如何避免它。非常感谢任何帮助。

2个回答

4
我找不到描述这个问题原因的文章,只是测试了一下,所以如果这个方法能解决你的问题,我会与你分享。
你的Site.Master中有像这样的内容吗:<asp:PlaceHolder runat="server">...</asp:PlaceHolder><head>...</head> 内吗?如果没有,请在 <head>..</head> 中创建一个,如果有,请将 link 放在这个 <asp:PlaceHolder runat="server">...</asp:PlaceHolder> 中。
<head runat="server">

   ...

    <asp:PlaceHolder runat="server">
        ...
        <link rel="stylesheet" href="css/icomoon.css" media="print" onload="this.media='all'">
        ...
    </asp:PlaceHolder>

    ...

</head>

2

就像你发现的那样,在主页面的头部使用CSS链接标签中的onload会出错。

为了消除错误,在主页面的body标签下方放置CSS <link..>。在我的测试中,它可以正常工作。

 <body>
  <link rel="stylesheet" href="css/icomoon.css" media="print" onload="this.media='all'" />
   <%- other code --%>
 </body>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接