簡體   English   中英

停止字符從 C# 代碼隱藏在 HTML 中編碼

[英]Stop Characters from Encoding in HTML from C# Code Behind

你好,提前謝謝你。 我正在從后面的 C# 代碼生成控件,並希望應用一個 onclick 屬性,該屬性將發送一個模式來阻止顯示。 當代碼執行時,onclick 函數字符串中的撇號被編碼為' 我想阻止這種情況發生並傳遞原始文本。

我嘗試了以下方法來解決沒有解決方案的問題:
\\'
''
<%= myString %>
HtmlString(myString).ToHtmlString();

我可能嘗試過其他迭代,但我都忘記了。

這是創建控件的代碼部分:

HtmlGenericControl viewMoreInfo = new HtmlGenericControl("span");
//HtmlString onclick1 = new HtmlString($"document.getElementById('{i.il_itemcode}Modal').style.display = 'block'");
string onclick1 = $"document.getElementById('{i.il_itemcode}Modal').style.display = 'block'";
viewMoreInfo.Attributes["onclick"] = onclick1;
viewMoreInfo.Attributes["class"] = "w3-bar-item w3-button w3-white w3-xlarge w3-right";
viewMoreInfo.InnerText = "+";

這是它呈現為的示例:

<span onclick="document.getElementById(&#39;TEST1Modal&#39;).style.display = &#39;block&#39;" class="w3-bar-item w3-button w3-white w3-xlarge w3-right">+</span>

我需要撇號正確呈現才能使函數正常工作。

任何幫助都將被大大挪用。

您的問題具有誤導性,因為“我需要撇號才能正確呈現該功能才能正常工作。” 是不正確的。 請注意以下內容是您示例的精確副本,並且單擊事件在當前呈現時可以正常工作。

 <p id="TEST1Modal" style="display:none">This is hidden until clicked</p> <span onclick="document.getElementById(&#39;TEST1Modal&#39;).style.display = &#39;block&#39;" class="w3-bar-item w3-button w3-white w3-xlarge w3-right">+</span>

暫無
暫無

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

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