C# 在JS和代码隐藏中处理字符串中的单引号
我的资源文件中有一个字符串,我在代码隐藏和javascript中使用它,但它在JS中抛出了错误 资源文件字符串为Par des changements de l'espace réservé 如何使用在所有三种情况下都有效的转义字符 1.JS(例如,我将TD的内部文本与该资源值进行比较) 2.代码隐藏(使用该资源值设置TD的内部文本) 3.ASPX(使用资源值设置标签的文本属性) 如果是单引号 如果我在资源文件中使用带反斜杠转义字符的值,它将在代码中用该斜杠打印该值。C# 在JS和代码隐藏中处理字符串中的单引号,c#,javascript,asp.net,globalization,C#,Javascript,Asp.net,Globalization,我的资源文件中有一个字符串,我在代码隐藏和javascript中使用它,但它在JS中抛出了错误 资源文件字符串为Par des changements de l'espace réservé 如何使用在所有三种情况下都有效的转义字符 1.JS(例如,我将TD的内部文本与该资源值进行比较) 2.代码隐藏(使用该资源值设置TD的内部文本) 3.ASPX(使用资源值设置标签的文本属性) 如果是单引号 如果我在资源文件中使用带反斜杠转义字符的值,它将在代码中用该斜杠打印该值。 使用反斜杠(\)可以对字符
使用反斜杠(
\
)可以对字符进行转义:
如果您使用后端代码动态创建前端JS,那么您的JS也会使用双引号字符串 这个例子是用伪代码编写的,如果您将它写到一个PHP文件中,它实际上可能会工作(我知道您使用的不是这个):
var myStringInJS=”“;
这可能非常棘手,因此我要做的是:
“
”
\'
Par des changements de l\'espace réservé
导致服务器端字符串值为:
string javascriptEscapedText = "Par des changements de l\'espace réservé";
和javascript字符串值:
var escapedText = 'Par des changements de l\'espace réservé';
你试过
\'
了吗?就像中的“…de l'espace…”
(虽然如果字符串用双引号引起来,你根本不需要转义撇号。)但是如果我在aspx.cs中打印这个字符串,它会将字符串打印为“Par des changements de l'espace réservé”;(将在代码后面打印)
string javascriptEscapedText = "Par des changements de l\'espace réservé";
var escapedText = 'Par des changements de l\'espace réservé';