如何在jsp中将bean值传递给javascript?

时间:2015-04-13 13:51:10

标签: java javascript jsp javabeans

我正在尝试将bean从bean传递到jsp页面(使用<%= TestBean.getNumber()%>之类的东西)。

但是当我尝试将其传递给页面中的javascript时,它会给我一个错误:“non-static method cannot be referenced in static context"。我试图在脚本中形成一个循环,例如:

    for (int i = 0; i < (<%= TestBean.getNumber()%>); i++) 
    {
    // 
    }

任何人都知道如何将bean值传递给javascript?感谢。

1 个答案:

答案 0 :(得分:0)

您的bean名称TestBean看起来是您的班级名称。

编译器认为您正在尝试访问类方法(静态方法)。如果您尝试调用实例方法(非静态),则需要定义bean实例的名称。

约定是类以大写名称开头,实例使用小写名称。尝试按照此规则声明bean实例(小写名称)。

例如:

<html>
    <head>
        <script>
        <%
            class SampleBean {
                String _value;
                public String getValue () { return _value; }
                public void setValue (String value) { _value = value; }
            }
            SampleBean sb = new SampleBean();
            sb.setValue("Hello World!");
        %>
        v = "<%= sb.getValue() %>";
        </script>
    </head>
    <body>
        <a href="javascript:alert(v)">Click me!</a>
    </body>
</html>