标签: html-encode

HTML.Encode但保留换行符

我将用户输入带入文本区域,存储并最终将其显示回用户.

在我的视图(剃刀)中我想做这样的事情......

@Message.Replace("\n", "</br>")
Run Code Online (Sandbox Code Playgroud)

这不起作用,因为默认情况下Razor Html编码.这很棒,但我想换线.

如果我这样做,我会遇到XSS问题.

@Html.Raw(Message.Replace("\n", "</br>"))
Run Code Online (Sandbox Code Playgroud)

处理这种情况的正确方法是什么?

asp.net-mvc html-encode asp.net-mvc-3

37
推荐指数
3
解决办法
3万
查看次数

如何让Jade停止HTML编码元素属性,并生成一个文字字符串值?

UPDATE Jade v0.24.0使用!=属性语法修复此问题.option(value!='<%= id %>')


我正在尝试<option>使用jade 构建一个,其中选项的值是UnderscoreJS模板标记:<%= id %>但我无法让它工作,因为jade将我的标记文本转换为&lt;= id &gt;.

这是我的Jade标记:

script(id="my-template", type="text/template")
  select(id="type")
    &lt;% _.each(deviceTypes, function(type){ %>
    option(value='&lt;%= type.id %>') <%= type.name %>
    &lt;% }) %>
Run Code Online (Sandbox Code Playgroud)

我希望它能产生这个html:

<script id="my-template" type="text/template">
  <select id='type'>
    <% _.each(deviceTypes, function(type){ %>
    <option value="<%= type.id %>"> <%= type.name %> </option>
    <% }) %>
  </select>
</script>
Run Code Online (Sandbox Code Playgroud)

但我得到的是这样的:

<script id="my-template" type="text/template">
  <select id='type'>
    <% _.each(deviceTypes, function(type){ %>
    <option value="&lt;%= type.id %&gt;"> <%= type.name %> </option>
    <% }) …
Run Code Online (Sandbox Code Playgroud)

templates html-encode string-literals underscore.js pug

37
推荐指数
3
解决办法
4万
查看次数

在C#中将HTML实体转换为Unicode字符

我发现Python和Javascript的类似问题和答案,但不适用于C#或任何其他WinRT兼容语言.

我认为我需要它的原因是因为我正在显示我从Windows 8商店应用程序中的网站获得的文本.比如&eacute;应该成为é.

或者,还有更好的方法?我没有显示网站或RSS订阅源,只是列出了网站及其标题.

c# html-encode html-entities windows-runtime

37
推荐指数
3
解决办法
3万
查看次数

XML内部的HTML.我应该使用CDATA还是编码HTML

我正在使用XML来共享HTML内容.AFAIK,我可以通过以下方式嵌入HTML:

  • 编码:我不知道它是否完全安全使用.我将不得不再次解码它.

  • 使用CDATA部分:如果内容包含结束标记"]]>"和某些十六进制字符,我仍然会遇到问题,我相信.另一方面,XML解析器将为我透明地提取信息.

我应该选择哪个选项?

更新:xml将在java中创建,并作为字符串传递给.net Web服务,它将被解析回来.因此,我需要能够将xml导出为字符串并使用"doc.LoadXml(xmlString);"加载它.

xml html-encode cdata

36
推荐指数
3
解决办法
9万
查看次数

HTML编码字符串 - ASP.NET Web窗体VS Razor视图引擎

我不太确定这是如何工作的...试图找到文档.

在我现有的应用程序中,我有两种不同的方式在我的视图中呈现字符串

<%: model.something %>
<!-- or -->
<%= model.something %>
Run Code Online (Sandbox Code Playgroud)

第一个是html编码,第二个不是.

Razor有类似的东西吗?我只能找到这个,这是编码版本.

@model.something
Run Code Online (Sandbox Code Playgroud)

html-encode viewengine razor asp.net-mvc-3

34
推荐指数
2
解决办法
2万
查看次数

是否有JDK类来进行HTML编码(但不是URL编码)?

我当然熟悉这些java.net.URLEncoderjava.net.URLDecoder课程.但是,我只需要HTML风格的编码.(我不想' '替换'+'等).我不知道在类中构建的JDK只会进行HTML编码.有吗?我知道其他选择(例如,Jakarta Commons Lang'BtringEscapeUtils',但我不想在我需要它的项目中添加另一个外部依赖项.

我希望在最近的JDK(又名5或6)中添加了一些我不知道的JDK.否则我必须自己动手.

html java html-encode

31
推荐指数
4
解决办法
5万
查看次数

HTML在存储或显示时编码用户输入

一直困扰我的简单问题.

我应该立即对用户输入进行HTML编码并将编码内容存储在数据库中,还是应该在显示时存储原始值和HTML编码?

存储编码数据可以大大降低开发人员在显示数据时忘记对数据进行编码的风险.但是,存储编码数据会使数据挖掘变得更加麻烦,并且会占用更多空间,即使这通常不是问题.

html security xss html-encode

30
推荐指数
4
解决办法
6262
查看次数

如何从ASP.NET MVC视图中显示存储在数据库中的HTML?

我将FCKEditor发出的HTML代码存储在数据库中,并希望将其显示(良好渲染)到视图上.因此,例如,存储为:

&lt;&gt;pre&lt;&gt;This is some sample text&lt;&gt;pre&lt;/&gt
Run Code Online (Sandbox Code Playgroud)

将以如下方式显示给用户:

This is some sample text
Run Code Online (Sandbox Code Playgroud)

(具有预格式化文本的适当样式)

视图已经具有要显示的必需字符串ViewData,我只是不确定向用户显示它的最佳方式是什么.

html asp.net-mvc html-encode

29
推荐指数
2
解决办法
5万
查看次数

使用新的Razor View引擎,我的HtmlHelpers应该返回字符串还是IHtmlString?

使用Razor View Engine,只要您将字符串直接输出到页面,它就是HTML编码的.例如:

@"<p>Hello World</p>"
Run Code Online (Sandbox Code Playgroud)

实际上将输出到页面:

&lt;p&gt;Hello World &lt;/p&gt;
Run Code Online (Sandbox Code Playgroud)

哪个会在浏览器中显示为:

<p> Hello World </ p>

这里的问题是,在创建Html帮助程序时,到目前为止,使用旧的aspx视图引擎,我只返回一个字符串,并将其输出到浏览器:

<%= Html.MyCoolHelperMethod(); %>
Run Code Online (Sandbox Code Playgroud)

所以我的问题基本上就是这个.我这样做:

public static IHtmlString MyCoolHelperMethod(this HtmlHelper helper)
{
   return new helper.Raw("<p>Hello World</p>");
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我可以在我的cshtml中执行此操作:

@Html.MyCoolHelperMethod();
Run Code Online (Sandbox Code Playgroud)

或者我这样做:

public static string MyCoolHelperMethod(this HtmlHelper helper)
{
   return "<p>Hello World</p>";
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我需要在我的cshtml中完成工作:

@Html.Raw(Html.MyCoolHelperMethod());
Run Code Online (Sandbox Code Playgroud)

显然,第一种方法使视图看起来更清晰,但我只是想知道普通模式是否实际上是帮助者返回IHtmlString并且我过去做错了.

c# asp.net-mvc html-encode razor

28
推荐指数
1
解决办法
9707
查看次数

为什么我的自定义HTML Helper结果会被html编码?

我在asp.net mvc 3中有以下自定义html助手

public static string RegisterJS(this HtmlHelper helper, ScriptLibrary scriptLib)
{
   return "<script type=\"text/javascript\"></script>\r\n";
}
Run Code Online (Sandbox Code Playgroud)

问题是结果是像这样得到html编码(我必须添加空格才能正确显示结果:

   &lt;script type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
Run Code Online (Sandbox Code Playgroud)

这对我来说显然没什么帮助..我读过的任何内容都没有说明这一点......关于如何才能得到真实结果的任何想法?

html-encode asp.net-mvc-3

26
推荐指数
1
解决办法
8393
查看次数