c# - 从 C# 代码后面停止字符在 HTML 中的编码
问题描述
您好,提前谢谢您。我正在从后面的 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('TEST1Modal').style.display = 'block'" class="w3-bar-item w3-button w3-white w3-xlarge w3-right">+</span>
我需要撇号正确渲染才能使功能正常工作。
任何帮助都会得到很大的帮助。
解决方案
您的问题具有误导性,因为“我需要撇号正确渲染才能使功能正常工作。” 是不正确的。请注意以下是您的示例的精确副本,并且 click 事件在当前呈现时工作得很好。
<p id="TEST1Modal" style="display:none">This is hidden until clicked</p>
<span onclick="document.getElementById('TEST1Modal').style.display = 'block'" class="w3-bar-item w3-button w3-white w3-xlarge w3-right">+</span>
推荐阅读
- gdprconsentform - 无法在 apache unomi 中更新“同意状态”
- xamarin - 如何从各种条目(每个单行)中检索数据,计算它,然后能够实时显示结果?
- c++ - 基类的向量,后代的访问元素 - C++
- scala - PlayFramework Application 2.7.x 每种错误类型的自定义错误页面
- python - 如何在 Python 中引用字典的特定部分
- windows - AutoHotKey 的“%UserInput%”功能是否存在严重错误?它没有逃脱,或者似乎允许我逃脱,双引号
- java - java.lang.RuntimeException:我该如何解决这个崩溃?是什么原因造成的?
- django - Django - 只允许一个文件填写表格
- react-native - Navigate.push 动作多次渲染页面
- javascript - 如何更新我的 parse() 函数,使其可以与局部函数和全局函数一起使用?