如何在 JSF 页面中插入非中断空格字符?

如何在 JSF 页面中插入非中断空格字符 就像我可以在 HTML 中使用  ? JSF 中有这样的标记吗?

115126 次浏览

Eventually, you can try this one, if just using   fails...

<h:outputText value="& nbsp;" escape="false"/>

(like Tom, I added a space between & and nbsp; )

this will work

<h:outputText value="&#160;" />

If your using the RichFaces library you can also use the tag rich:spacer which will add an "invisible" image with a given length and height. Usually much easier and prettier than to add tons of nbsp;.

Where you want your space to show you simply add:

<rich:spacer height="1" width="2" />

Putting the HTML number directly did the trick for me:

&#160;

The easiest way is:

<h:outputText value=" " />

I found that the parser would complain if I used the &nbsp; entity in my page. After a little research, I learned that if I added a DOCTYPE declaration to the beginning of the page, the entity was allowed. I use this DOCTYPE declaration:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

A side effect of this is that the resulting code (as seen by using the "view source" feature of a web browser) doesn't actually contain the &nbsp; entity. It instead includes the actual characters that represent a nonbreaking space. Although it works, it's not really what I want. I'm still looking for a way to make the parser not replace the entity with the character.

More information here: http://java.net/jira/browse/JAVASERVERFACES-1576

You can also use primefaces <p:spacer width="10" height="10" />

just to add to options: <h:outputText value="&amp;nbsp;" escape="false"/> worked

You can use primefaces library

 <p:spacer width="10" />

Not necessary to give 160 . 141 will also work. For the value field provide value="&#141" .