Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用双引号包装ASP.NET控件_C#_Javascript_Asp.net_Html Encode - Fatal编程技术网

C# 用双引号包装ASP.NET控件

C# 用双引号包装ASP.NET控件,c#,javascript,asp.net,html-encode,C#,Javascript,Asp.net,Html Encode,我在一个转发器中处理博客文章,并在底部显示一个ShareThisJavaScript页面。文章的标题和URL正在发送到JS。在一个测试用例中,帖子的标题只有一个引号,例如 马克的测试桩 由于我需要在发送到ShareThis时保留该单引号,因此我需要将该JavaScript字符串用双引号括起来,但是该字符串是通过一个文本绑定的,我不能用双引号括起来: 这是我想要的,但不起作用: SHARETHIS.addEntry({ title: "<asp:Literal ID="ltlTitle" r

我在一个转发器中处理博客文章,并在底部显示一个ShareThisJavaScript页面。文章的标题和URL正在发送到JS。在一个测试用例中,帖子的标题只有一个引号,例如

马克的测试桩

由于我需要在发送到ShareThis时保留该单引号,因此我需要将该JavaScript字符串用双引号括起来,但是该字符串是通过一个文本绑定的,我不能用双引号括起来:

这是我想要的,但不起作用:

SHARETHIS.addEntry({ title: "<asp:Literal ID="ltlTitle" runat="server" />", etc..
我如何正确地对其进行编码,或者以某种方式将控件用双引号括起来?我知道
HttpUtility.HtmlEncode
Server.HtmlEncode
,但我看不出这些对我有什么帮助。

您需要在服务器端对字符串进行“javascript编码”。 你可能正在寻找这样的东西

您需要在服务器端对字符串进行“javascript编码”。 你可能正在寻找这样的东西


事实证明,我实际上可以在ASP.NET控件本身中使用单引号,我从来不知道这是有效的。我过去认为这是一个解析器错误,但我的页面加载正确

title: "<asp:Literal ID='ltlTitle' runat='server' />"

事实证明,我实际上可以在ASP.NET控件本身中使用单引号,我从来都不知道这是有效的。我过去认为这是一个解析器错误,但我的页面加载正确

title: "<asp:Literal ID='ltlTitle' runat='server' />"

改为使用
怎么样?改为使用
怎么样?我尝试在我的C中对单个引号中的
\x27
的编码值进行替换,但它仍然呈现不正确。由于您只担心单个引号,请尝试此快速修复。lblTitle.Text=title.Replace(“'”,“\\”);但是,如果您想确保安全,最终需要创建自己的JavaScript编码函数。我尝试在我的C#中对单个引号中的编码值
\x27
进行替换,但它仍然呈现不正确。由于您只担心单个引号,请尝试此快速修复。lblTitle.Text=title.Replace(“'”,“\\”);但如果您希望安全,最终需要创建自己的JavaScript编码函数。
title: "<asp:Literal ID='ltlTitle' runat='server' />"
title: "Mark's test post"