小编Ton*_*ton的帖子

跨语言字符串转义

我有一个 C# 字符串,其中包含错误消息。该消息可以包含单引号或双引号或两者都包含,但我可以根据需要随意操作字符串(以及 HTML/Javascript)。

例如,可以显示以下消息(内容并不重要,重要的是它们可以包含单引号或双引号):

  • The following error has occurred: "You dun goofed."
  • The specified path isn't valid.
  • The following error has occurred: "I'm a goof"

该字符串作为 onClick 处理程序内的警报插入到 HTML 中。这听起来很复杂,所以让我来说明我的意思:

<a onClick="alert('myContentGoesHere')">View Error</a>

我可以通过在 C# 中替换为来显示单'引号\'。然而,我尝试类似的转义"会导致出现奇数个反斜杠,从而终止 onClick 属性并导致无效的 HTML。

到目前为止,我已尝试替换"为:

  • \"
  • \\"
  • &quot;
  • &#92;&quot;

没有骰子。我觉得我可能从错误的角度来处理这个问题,所以如果你有一个超越字符串替换的解决方案,我会洗耳恭听。谢谢你尽你所能的帮助。

html javascript c# string escaping

4
推荐指数
1
解决办法
3258
查看次数

标签 统计

c# ×1

escaping ×1

html ×1

javascript ×1

string ×1