Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在JSP上显示时用法语字符转义智能引号_Javascript_Java_Jsp_Internationalization - Fatal编程技术网

Javascript 如何在JSP上显示时用法语字符转义智能引号

Javascript 如何在JSP上显示时用法语字符转义智能引号,javascript,java,jsp,internationalization,Javascript,Java,Jsp,Internationalization,目前,我们的应用程序支持i18n。 每个语言环境都有一个属性文件。 对于英语,我们能够成功地显示属性文件中定义的占位符 问题 当我们将应用程序中的区域设置/语言设置从英语更改为法语时,我们无法替换占位符。 占位符-字符串日期-已成功从控制器返回,但仍无法在UI页面上替换 这是因为JSP中指定的键的完整值没有针对法语区域设置正确呈现&因此占位符没有被替换 我们面临的问题的特殊性质是“聪明的报价”(d'essai) 此字符的Unicode:U+00B4 我们已经尝试使用Meta&page指令在JSP

目前,我们的应用程序支持i18n。 每个语言环境都有一个属性文件。 对于英语,我们能够成功地显示属性文件中定义的占位符

问题 当我们将应用程序中的区域设置/语言设置从英语更改为法语时,我们无法替换占位符。 占位符-字符串日期-已成功从控制器返回,但仍无法在UI页面上替换

这是因为JSP中指定的键的完整值没有针对法语区域设置正确呈现&因此占位符没有被替换

我们面临的问题的特殊性质是“聪明的报价”(d'essai) 此字符的Unicode:U+00B4

我们已经尝试使用Meta&page指令在JSP页面中放置UTF-8编码,但仍然没有解决这个问题

非常感谢您的帮助

我的代码片段

你可以给我一份免费的午餐

正如您所看到的,{0}在法语区域设置中并没有被动态替换,而在英语区域设置中,它正按预期工作

已尝试使用StringEscapeUtils.escapeJavascript(myMessageFromProperties)
也没有帮助

单引号是MessageFormat字符串中的一个特殊字符,用于引用文本,然后不会对其进行处理。有关详细信息,请参见JavaAPI


您需要两个单引号来转义它并显示一个单引号。

Yes Karpak!它在JSP中!法语属性文件Votre période d'essai under prend fin le{0}中的值您是否缺少原始代码中的右大括号“${paramToBeReplaced}”?这与javascript有什么关系?@Traktor53:我的想法是调用StringEscapeUtils.escapeJavascript()查看是否可以转义任何特殊字符。您可以将“')转义为
´或javascript字符串中的
\u00b4
——如果有帮助的话。
<fmt:message bundle="${myBundle}" key="myKey"><fmt:param value="${nextDateInString}"/></fmt:message>