我正在尝试将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?感谢。
答案 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>