我正在开发MVC web应用程序。我有一个Razor和JavaScript的页面组合。
Razor:
@{
ViewBag.Title = "Edit";
string initialImage = "<img src='/Site_Data/BIO/Bio.jpg' title='BIO'>";
}JavaScript:
<script type="text/javascript">
$("#Photos").fileinput({
initialPreview: [@initialImage],我想要的是:
<script type="text/javascript">
$("#Photos").fileinput({
initialPreview: ["<img src='/Site_Data/BIO/Bio.jpg' title='BIO'>"],(在源视图中)是:
<script type="text/javascript">
$("#Photos").fileinput({
initialPreview: [<img src='/Site_Data/BIO/Bio.jpg' title='BIO'>],我尝试了许多HtmlEncode和HtmlDecode的组合(在Razor和JavaScript部分),但都找不出答案。请给我建议。谢谢!
发布于 2017-01-22 03:50:01
默认情况下,asp.net mvc将对您的字符串进行编码。要使用未编码的字符串,请使用Html.Raw( string ):
<script type="text/javascript">
$("#Photos").fileinput({
initialPreview: ["@Html.Raw(initialImage)"],发布于 2017-01-22 07:26:07
Html.Raw在不执行html编码的情况下呈现给定的内容,因此
@Html.Raw(initialImage);将呈现为
<img src='/Site_Data/BIO/Bio.jpg' title='BIO'>在js中,只需使用双qoutes对其进行编码:
<script type="text/javascript">
$("#Photos").fileinput({
initialPreview: ["@Html.Raw(initialImage)"],但是,当有编码字符(如ViewBag.Something = ">"; )时,原始版本是>.,以返回所需的实际html。
Html.Raw(HttpUtility.HtmlDecode(EncodedContent));https://stackoverflow.com/questions/41786863
复制相似问题