Primefaces Ajax更新上的欧元符号
我试图在我的页面上写上欧元货币符号。当我加载页面时,它工作得非常完美,但是当我通过AJAX进行部分更新时,没有正确加载Euro符号。我尝试了3种不同的方法:Primefaces Ajax更新上的欧元符号,ajax,jsf,primefaces,Ajax,Jsf,Primefaces,我试图在我的页面上写上欧元货币符号。当我加载页面时,它工作得非常完美,但是当我通过AJAX进行部分更新时,没有正确加载Euro符号。我尝试了3种不同的方法: <h:outputText value="€" /> <h:outputText value="&euro;" /> <h:outputText value="€" /> 在使用AJAX进行部分更新时,没有一个可以正常工作: ? € € 实现中
<h:outputText value="€" />
<h:outputText value="&euro;" />
<h:outputText value="€" />
在使用AJAX进行部分更新时,没有一个可以正常工作:
?
€
€
实现中所述的过滤器时的结果与上述相同
我花了一整天的时间试图解决这个问题。谢谢你的帮助
谢谢,
Douglas.您发现的仅适用于HTTP请求参数(提交的表单值)的解码。但这不适用于您的情况。显然,HTTP响应的编码(HTML/XML输出生成)存在问题
HTTP响应的编码至少可以通过两种方式进行控制:
- 在
中声明的编码,默认为UTF-8。这也可以通过
以编程方式进行设置,但JSF开发人员通常不会这样做ExternalContext#setResponseCharacterEncoding()
- 用于保存物理模板文件的编码。这实际上并不影响在生成HTML/XML输出期间使用的编码,但会影响字符的处理方式。如果模板文件使用与
不同的编码(如ISO-8859-1)保存,则字符可能以类似的方式结束
(否则您很可能会在问题中明确提到),那么最可能的原因是您的模板文件使用错误的编码保存。这将依次在编辑器本身中进行配置。如果它是例如Eclipse,那么您需要通过窗口>首选项>常规>工作区>文本文件编码来设置它
另见:
- 在
中声明的编码,默认为UTF-8。这也可以通过
以编程方式进行设置,但JSF开发人员通常不会这样做ExternalContext#setResponseCharacterEncoding()
- 用于保存物理模板文件的编码。这实际上并不影响在生成HTML/XML输出期间使用的编码,但会影响字符的处理方式。如果模板文件使用与
不同的编码(如ISO-8859-1)保存,则字符可能以类似的方式结束
(否则您很可能会在问题中明确提到),那么最可能的原因是您的模板文件使用错误的编码保存。这将依次在编辑器本身中进行配置。如果它是例如Eclipse,那么您需要通过窗口>首选项>常规>工作区>文本文件编码来设置它
另见:
?
€
€