我可以定义一个jsp自定义标记来扩展标准的html标记吗?

时间:2010-08-31 11:49:46

标签: jsp custom-attributes custom-tag

例如:

<c:a href="/myurl" style="margin: 5px;" addJsessionId="true" logEvent="true">
  click here</c:a>

这样:

1)(样式)的所有标准属性按原样传播。

2)我的标记处理程序实现处理自定义属性(在这种情况下为addJsessionId和logEvent)。

1 个答案:

答案 0 :(得分:2)

应该很容易。 JSP允许您使用dynamic attributes定义标记,这实际上意味着属性作为通用名称/值对传递给自定义标记对象,而不是像普通标记属性那样通过setter传递。这意味着您可以透明地支持任意HTML属性,而无需在标记类中单独声明它们。

所以,write a subclass of SimpleTagSupportcustom attributes fully defined and implemented,然后是enable dynamic attributes for that tag

您仍然可以从标记代码生成实际的HTML,但这应该很简单。