我正在尝试在元数据描述中获取复选标记。由于我的网站是多语言,我添加如下描述
<%@ Page MetaDescription="<%$Resources:metadescription%>
当我添加这些代码时,选中标记代码(http://www.fileformat.info/info/unicode/char/2713/index.htm)
✓
或
✓
或有人建议:
✔
在我的Visual Studio 2012资源文件(default.aspx.resx)中,它们被呈现为确切的代码,而不是我期望的复选标记。如何将复选标记呈现给HTML而不是代码?
我将此行添加到我的母版页:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
当我直接在HTML中输入此代码时:
✔
所以在default.aspx中,勾选标记正确呈现!
当我替换
<%@ Page MetaDescription="<%$Resources:metadescription%>"
带
<%@ Page MetaDescription="<%=$Resources:metadescription%>"
我只是在我的HTML中得到这个:
<meta name="description" content="<%=$Resources:metadescription%>" />
资源文件中的HTML代码似乎出现问题,但如何解决?
答案 0 :(得分:3)
所以你看到
<meta name="description" content="… ✔ …" />
在生成的标记中,您希望看到
<meta name="description" content="… ✔ …" />
代替。
首先,我想指出,在阅读✔
属性时,任何用户代理都应将✔
实体解码为content
。见attributes in HTML spec。因此,你想要的实际上是一种化妆品变化,几乎没有任何技术影响。
如果您想获得后一个标记(使用✔
),只需在资源文件中包含✔即可。你可以复制&amp;从
javascript:'✔'
放入浏览器的位置栏时呈现的页面。或者您可以使用和info on input methods直接输入。例如。在Windows上,您可以键入 Alt + 2 , 7 , 1 , 4 (在Fileformat.info上也有描述)。有关各种操作系统的更实用{{3}},请参阅fsymbols.com。
答案 1 :(得分:0)
如何在HTML中包含资源文本?您是否将值分配给标签?你直接把它写到页面上吗? ASP.NET将自动html编码控件子集的值。
following list of controls do not HTML encode the value you assign。所有其他控件将自动编码。如果需要在自动编码控件中显示该值,则需要将原始unicode值放在Resource文件中,而不是HTML编码版本。
要将您的unicode文本添加到resx文件,您可以使用 ALT + 1 + 0 + 0 num-pad上的+ 0 + 3 以插入字符。或者,您可以从任何网页或Word文档或Windows中的字符映射将其直接复制粘贴到编辑器中。
要使<% %>
不对您的HTML内容进行自动编码,请使用<%= %>
。