处理 JS 和代码隐藏中的字符串中的单引号
本文关键字:单引号 字符串 隐藏 JS 代码 处理 | 更新日期: 2023-09-27 18:32:58
我的资源文件中有一个字符串,我正在我的代码隐藏和JavaScript中使用,但它在JS中抛出错误。
Resource file string is Par des changements de l'espace réservé
如何使用在所有三种情况下都有效的转义字符
1.JS(例如,我正在将TD的内部文本与该资源值进行比较)
2.代码隐藏(使用该资源值设置 TD 的内部文本)
3.ASPX(使用资源值设置标签的文本属性)
如果是单引号?
如果我使用带有反斜杠转义字符的资源文件中的值,它将使用该斜杠在代码后面打印该值。 Par des changements de l'''espace réservé
如果您使用后端代码动态创建前端 JS,则还可以让 JS 使用双引号字符串。
这个例子是伪代码,如果你把它写到一个PHP文件中,它可能会真正工作(我知道这不是你正在使用的):
var myStringInJS = "<%=myStringFromResourceFile%>";
您可以使用反斜杠 ( '
转义字符):
var a = 'Par des changements de l''espace réservé';
这可能非常棘手,所以我要做的是:
- 在服务器端代码中,始终使用双引号
"
- Javascript总是使用单引号
'
- 在服务器端代码 javascript 字符串中,我总是使用
''
转义单引号
这可以阻止任何混乱代码的发生。
因此,资源文件中的值将为:
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é';