【发布时间】:2014-08-18 15:00:19
【问题描述】:
我正在开发一个 ASP.NET MVC3 项目。
在基本更新页面中,我试图将数据库中记录的数据显示到一些TextBoxFor 中。但是,数据可以包含一些特殊字符,例如引号 ' 或重音字母,例如 é
当我写作时
@Html.TextBoxFor(m => m.MyProperty)
显示的文本看起来像L'avée,而不是L'avée。
我见过this question,但答案对我没有任何改变。
有没有办法在TextBoxFor 中用重音字母和引号显示我的字符串PROPERLY?
更新
此字段位于仅包含此字段的部分视图中:
@model MyApp.Models.SomeModel
<div class="form-group">
@Html.LabelFor(m => m.MyModel.Submodel.MyProperty)
@Html.TextBoxFor(m => m.MyModel.Submodel.MyProperty, new { @class = "form-control", @id = "txtMyProperty" })*@
</div>
在这里,SomeModel 正确显示(相信我)。
-
SomeModel有一个MyModel属性。 -
MyModel有一个SomeModel属性 -
SomeModel有一个MyField字段。
一切都从 DB 正确填充(相信我,它已经过测试和重新测试)。
但是,如果 MyField 包含特殊字符,我将无法正确显示它。它已显示,但使用 HTML 表示,例如 &#39;
【问题讨论】:
-
我已经看到了这个答案,但我做不到@Html.TextBoxFor(HttpUtility.HtmlDecode(m => m.MyProperty))
-
这里的第一个选项有什么问题?stackoverflow.com/a/8402310/2436549
-
问题是该字段仍然显示为 L'avée。但是,当我在其上放置断点时,字符串是正确的并且包含我的重音字母。但是页面显示的时候,字段中包含HTML字符,不好。
-
我做了一个测试应用程序并在下面提供了我的源代码。它完美地工作。 Upvodting Zsfars 评论是正确的。可能还有更多我们不知道的信息......但提供的信息可以回答问题。
标签: asp.net asp.net-mvc-3 non-ascii-characters html.textboxfor