2

現在、フォームに Struts2 タグを使用しており、エラー メッセージを表示しています。私の質問は、Struts2 タグでエラー メッセージを表示するためのデフォルトのマークアップは、タグの使用法であるということです<ul>。とにかくこれを変更できますか?エラーメッセージを一覧ではなく表示したい<span>

どうすればこれを達成できますか?

4

5 に答える 5

3

もう 1 つのオプションは、UL 要素の CSS を変更することです。

このアプローチは、DOM 自体ではなく、特に外観に関心がある場合にのみ機能します。

于 2013-01-09T13:46:34.997 に答える
3

問題を解決するために次のコードを使用したのと同じ問題がありました

<s:if test="fieldErrors.get('email').size() > 0">
     <s:property value="fieldErrors.get('email').get(0)"/>
</s:if>

email は私のフィールドの名前です。この方法では、CSS を変更する必要はありません。

于 2014-01-27T06:15:15.403 に答える
3

レンダリング エラーに使用されるテンプレート ファイルをオーバーライドできます。jar からテーマのファイルをアプリケーションにコピーactionerror.ftlし、/タグを使用しないように変更します。fielderror.ftlsimplestruts2-coreulli

于 2013-01-09T09:54:41.967 に答える
3

タグはテーマに従って表示されます。質問は次のように変わります: テーマをどのように変更しますか? タグ(タグのテーマ属性をシンプルに設定)、ページ、リクエスト、または一般的に変更できます。

http://struts.apache.org/2.2.1/docs/struts-2-themes.html

個人的には HTML を書くのが好きです。つまり、struts2 のデフォルト テーマの「ヘルプ」は好きではありません。したがって、私の struts.xml では、次のように単純に使用します。

<constant name="struts.ui.theme" value="simple" />

Web 開発者は html を知っている必要があります。

更新

通常は YUI の reset.css を使用するので、おそらくこれを見逃していました...

アクションで ActionSupport を拡張すると、関連付けられたエラー メッセージ文字列をフォーマットなしで返すgetFieldErrors()メソッドが使用できるようになります。<s:property value='fieldError["field_name"]'/>

タグよりも可読性が低いわけではありません<s:fielderror/>...結局のところ、常にプロパティタグを使用する必要があります。

于 2013-01-09T07:44:21.523 に答える
-1

これは、Struts 2 の ActionError および ActionMessage クラスの使用方法を示すチュートリアルです。

http://www.mkyong.com/struts2/struts-2-actionerror-actionmessage-example/

  1. ActionError – エラー フィードバック メッセージをユーザーに送信するために使用されます – < s:actionerror/ > を介して表示します

    <s:if test="hasActionErrors()">
      <div class="errors">
       <s:actionerror/>
       </div>
    </s:if>
    
  2. ActionMessage – 情報フィードバック メッセージをユーザーに送信するために使用され、 < s:actionmessage/ > を介して表示されます。

    <s:if test="hasActionMessages()">
      <div class="welcome">
        <s:actionmessage/>
      </div>
    </s:if>
    
于 2013-01-09T06:18:17.510 に答える