簡體   English   中英

ASP.NET MVC / JavaScript-從C#安培解碼編碼的HTML字符串

[英]ASP.NET MVC / JavaScript - Decode Encoded HTML String from C# amper

我正在嘗試從JavaScript訪問靜態HTML。 這是我在做什么:

在_Header.cshtml中:

@{
    string HTMLContent = @Server.HtmlDecode("<div>Hello World</div>");
}

<script type="text/javascript">
    var StaticHTML = @HTMLContent;
</script>

但是,我收到以下錯誤:

Uncaught SyntaxError: Unexpected token &

當我逐步執行它時,似乎HTMLContent變量正在JavaScript中打印,就像未編碼一樣。

我在這里想念什么?

當razor在您的視圖中執行代碼時, @將對C#表達式的值進行編碼。 因此,您要避免這樣做。 您可以使用不執行任何html編碼的Html.Raw方法。

由於您正在將值分配給js變量,因此應將其用引號引起來(單引號或雙引號)。

這應該工作。

var StaticHTML = "@Html.Raw(HTMLContent)";
console.log(StaticHtml);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM