1

我正在通过博客文章在中继器中工作,并且我在底部显示了一个 ShareThis JavaScript 片段。帖子的标题和 URL 正在发送到 JS。在一个测试用例中,帖子的标题有一个单引号,例如

马克的测试帖

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

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

SHARETHIS.addEntry({ title: "<asp:Literal ID="ltlTitle" runat="server" />", etc..

我只能用单引号将文字括起来,如下所示:

SHARETHIS.addEntry({ title: '<asp:Literal ID="ltlTitle" runat="server" />', etc..

但这会导致糟糕的前端代码:

SHARETHIS.addEntry({ title: 'Mark's test post', etc..

如何正确编码或以某种方式将控件用双引号括起来?我知道,HttpUtility.HtmlEncodeServer.HtmlEncode我不明白这些对我有什么帮助。

4

2 回答 2

1

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

如何在 onClick 处理程序内的 JavaScript 代码中转义字符串?

于 2010-06-23T15:31:43.070 回答
0

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

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

结果是我想要的:

title: "Mark's test post"
于 2010-06-23T15:46:47.437 回答