2016-05-04 9 views
4

であると言うその "送信" =値を生成し、I持って、次の<s:submit>タグコード:Struts2のは、W3Cマークアップバリデータはエラー

<s:submit action="shipment_deleteShipperFromChosenShipperViewList" 
      type="image" src="/llr/theme/delete.gif" 
      onclick="clearDirtyFlag();deleteShipperFromChosenShipperViewList('%{organizationInfo.orgId}');" 
      tabindex="16" /> 

次のHTMLを生成:

<input type="image" 
     alt="Submit" 
     src="/llr/theme/delete.gif" 
     id="shipment_shipment_deleteShipperFromChosenShipperViewList" 
     name="action:shipment_deleteShipperFromChosenShipperViewList" 
     value="Submit" 
     tabindex="16" 
     onclick="clearDirtyFlag();deleteShipperFromChosenShipperViewList('1');"/> 

W3Cマークアップをバリデーター(W3C)は、HTMLをエラーとしてマークします。エラーメッセージは次のとおりです。

属性valueこの時点では、要素inputでは許可されていません。

明らかに、タイプが画像の場合は、valueは許可属性ではありません。 Struts2がvalue属性を生成しないようにするにはどうしたらいいですか?

+4

W3C HTMLチェッカー(バリデータ)の管理者はこちら。これはHTMLチェッカーのバグではありません。この場合、チェッカーは 'value'属性を許可しないという仕様に準拠しています。 https://html.spec.whatwg.org/multipage/forms.html#image-button-state-(type=image)にアクセスして** Bookkeeping details **セクションまでスクロールすると、 "要素のvalue属性を省略する必要があります。" – sideshowbarker

+0

ありがとうございます。うまくいけば、誰かが 'Struts2'にその属性を生成させないように教えてくれることを願っています。 – ponder275

+0

そのためのjira問題を作成します - https://issues.apache.org/jira/browse/WW/。 –

答えて

3

固定バージョンがリリースされるまで、いくつかの選択肢があります。

  • 使用プレーンHTML入力タグ<input type="image" ...>の代わり<s:submit>simpleテーマを使用していない場合は、<input>もいくつかのHTMLタグに入れる必要があります。

  • submit.ftlをstruts2コアのjarファイルからプロジェクトにコピーして変更します。

  • このW3C Markup Validatorエラーを無視するだけで、おそらく悪いことがあります。 :)

関連する問題