2008-10-28 66 views
8

我真的難住這一個。我想輸出一個列表並讓標記文件處理逗號,單數對複數等,但是當我顯示列表時,它完全忽略了空格,因此一切都運行完畢。我嘗試過使用HTML實體「thinsp」,「ensp」和「emsp」(我不能使用「nbsp」,這些都必須打破),但它們在IE上除了thinsp之外都非常寬一切。如何讓JSP標記文件不忽略所有空格?

編輯: 將無法​​正常工作。標籤的輸出根本沒有空格。雖然JSP中的任何內容都有正常的間距。很明顯,我可以將所有內容都放入JSP中,但這是在多個JSP上運行的代碼,因此標記文件很有意義。

回答

2

也許把jsp的內容放在一個html <pre>標記中? 在我看來這是正確的做法,因爲列表是預先格式化的內容。

0

所以你說你的標籤根本不打印出空白空間? 是否有任何可打印空白?

你可以發佈代碼,以及你如何使用它的簡短例子嗎?

+0

我的解決辦法只是把所有的文字100%到屬性文件。有時我必須鏈接在一起,因爲文本是有些動態的:例如,「user1,user2和user3做了些什麼」。 – 2009-03-31 01:09:10

0

我使用&#32;實體而不是空間,但通常我認爲這很糟糕,要麼是所有的空白都被吃掉了,而是必須破解實體,或者你在生成的HTML代碼中有廣闊的空間。

13

這實際上是EL分析器中的一個錯誤,它會導致EL表達式之間的空格被吃掉。例如。

${bean.foo} ${bean.bar} ${bean.waa} 

會得到打印爲(假定它們作爲其屬性名稱是返回同樣的字符串值):

foobarwaa 

我記得,這個問題是在什麼地方的報道,但我不能似乎現在發現它。至於現在,你可以通過使用JSTL c:out標籤解決它:

<c:out value="${bean.foo} ${bean.bar} ${bean.waa}" /> 

作爲正確獲得印刷:

foo bar waa