HTMLフォームでは、ボタンに「disabled」属性を任意の値で定義することにより、ボタンを無効にできます。
<button name="btn1" disabled="disabled">Hello</button>
ボタンを有効にする場合は、無効な属性を設定できる定義済みの値がないため、属性は存在しないはずです。これにより、ボタンは有効のままになります。
これにより、JSPドキュメント(jspx)を使用するときにボタンを有効/無効にしたいときに問題が発生します。JSPドキュメントは整形式のXMLドキュメントである必要があるため、次のようなものは合法ではないため、この属性を条件付きで含める方法はわかりません。
<button name="btn1" <%= (isDisabled) ? "disabled" : "" %/> >Hello</button>
JSTL ifタグを使用してタグを2回複製して目的の効果を得ることができますが、特定のケースでは、ボタンに15を超える属性(AJAXのJavaScriptイベントハンドラー属性が多数)が宣言されているため、タグを複製するとJSPは非常に厄介です。
JSPの可読性を犠牲にすることなく、どうすればこの問題を解決できますか?出力DOMを操作して親に属性を追加できるカスタムタグはありますか?