1

これは、コード例を使用して説明するのが最も簡単です。いくつかのシナリオでは、多くのテキストを含むリスト項目がありますが、最初の数語以上を表示するのは役に立ちません。JSP でこれを処理する方法は次のとおりです。

<% for(Item item : items) { %>
<li><%=StringHelper.shorten(item.getValue(),30))%></a></li>
<% } %>

フィルターには、単語の切り捨てを回避するためのロジックがいくつかあり、切り捨てを示すために "..." を含めます。すなわち:

<li>Some text</li>
<li>Some other text that is longer...</li>

フォーマッタでこれを行うきちんとした方法はありますか。おそらくこのようなことができることはわかっていますが、場所ごとに異なる番号を使用しているため、少しハッキーに思えます。

$items:{i|<li>$i.value;format="max30"$</li>}$
4

1 に答える 1

0

最も簡単な方法は、タグをカスタマイズすることです。

public class ShortenTag extends TagSupport{

  private static final int MAX_LENGTH = 30; 

  public int doStartTag(){

    // shorten string here
  }


}
于 2013-03-21T07:22:20.677 に答える