处理 JS 和代码隐藏中的字符串中的单引号

handling Single quote in string in JS and Code behind

本文关键字:单引号 字符串 隐藏 JS 代码 处理      更新时间:2023-09-26

我的资源文件中有一个字符串,我正在我的代码隐藏和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é';

这可能非常棘手,所以我要做的是:

  1. 在服务器端代码中,始终使用双引号"
  2. Javascript总是使用单引号'
  3. 在服务器端代码 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é';