0

下面的类是自定义标签的实现。

公共类 TextColorTag 扩展 TagSupport {

    私有字符串变量;
    //getter 和 setter

    公共 int doStartTag() 抛出 JspException {
         字符串颜色 = "#eee";
         设置值(变量,颜色);
         JspWriter out = pageContext.getOut();
         out.print(颜色);
    }

后来在我的 jsp 中,当我尝试使用 textColor 时,我发现它是空的

颜色是:<bv:textColor var="textColor" /> <!-- 好的!,显示 #eee -->

颜色是:${textColor} <!-- Ko!,为空。为什么?-->

当然,在 tld 中我已经声明了一个属性 var。

如何暴露自定义标签的结果?

4

1 回答 1

0

我在 javax.servlet.jsp.jstl.core.ConditionalTagSupport 中找到了响应

要公开变量,请替换以下内容:

设置值(变量,颜色);

经过

pageContext.setAttribute(var, color);
于 2013-02-10T17:44:37.397 回答