2

我正在尝试在我的元数据描述中打勾。由于我的网站是多语言的,所以我添加如下描述

<%@ Page MetaDescription="<%$Resources:metadescription%>

当我添加这些代码复选标记代码(http://www.fileformat.info/info/unicode/char/2713/index.htm

&#10003; 

或者

&#x2713;

或者正如有人已经建议的那样:

&#10004;

在我的 Visual Studio 2012 资源文件 (default.aspx.resx) 中,它们被呈现为确切的代码,而不是我期望的复选标记。如何将复选标记呈现给 HTML 而不是代码?

我将此行添加到我的母版页:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

当我直接在 HTML 中输入此代码时:

&#10004;

所以在 default.aspx 中,复选标记正确呈现!

当我更换

<%@ Page MetaDescription="<%$Resources:metadescription%>" 

<%@ Page MetaDescription="<%=$Resources:metadescription%>" 

我只是在我的 HTML 中得到这个:

<meta name="description" content="&lt;%=$Resources:metadescription%>" />

资源文件中的 HTML 代码似乎有问题,但如何解决呢?

4

2 回答 2

3
于 2013-12-05T16:54:28.463 回答
0

如何在 HTML 中包含资源文本?您是否将值分配给标签?你是直接写到页面上的吗?ASP.NET 将自动对控件子集的值进行 html 编码。

以下控件列表不对您分配的值进行 HTML 编码。所有其他控件将自动编码。如果需要在自动编码控件中显示值,则需要将原始 unicode 值放入资源文件中,而不是 HTML 编码版本。

要将您的 unicode 文本添加到 resx 文件中,您可以在小键盘上使用ALT+ 1+ 0+ 0+ 0+3来插入字符。或者,您可以从任何网页或 Word 文档或 Windows 中的字符映射直接将其复制粘贴到编辑器中。

或者要使<% %>您的 HTML 内容不自动编码,请使用<%= %>.

于 2013-05-18T10:36:24.133 回答