jsp里定义的变量,怎么打出来???急急!!

dciw 2003-08-07 06:16:45
我想在函数里打些连接,是递归的。
函数中的变量kindName,用<%=kindName%> 他不认得,这怎么回事???

我用 <%! 连续把函数包起来,对不对??



<% printhref(series); %>
<%! void printhref(Hashtable result)
{
String kindName = "";
Hashtable val = null;
if(result.isEmpty()) return ;
for (Enumeration e = result.keys(); e.hasMoreElements() ;) {
kindName = (String)e.nextElement();
val = (Hashtable)result.get(kindName);
if(val.isEmpty())
{
%>
<a href=RssMM_List.jsp?kind=<%=kindName%> target=_blank class=f15><%=kindName%></a>
<%! }
else
{
%>
<td><%=kindName%>------</td>
<%! printhref(val);
}

}
}
%>
...全文
58 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
joincsdn 2003-08-07
  • 打赏
  • 举报
回复
<%! %>可以的呀
dciw 2003-08-07
  • 打赏
  • 举报
回复
这段函数 想递归打些连接
log记录 test跑了好几遍,但连接只打了一个!!!
要是不用<%! %>,只用<%%>函数不认!!!!
急了!!


<% printhref(series); %>
<%! void printhref(Hashtable result)
{
String kindName = "";
Hashtable val = null;
if(result.isEmpty()) return ;
for (Enumeration e = result.keys(); e.hasMoreElements() ;) {
kindName = (String)e.nextElement();
test = kindName;
val = (Hashtable)result.get(kindName);
if(val.isEmpty())
{
newsWork.record(newsWork.DEBUG,"test: " + test);
%>
<a href=RssMM_List.jsp?kind=<%=test%> target=_blank class=f15><%=test%></a>
<%! }
else
{
%>
<td><%=test%>------</td>
<%! printhref(val);
}

}
}
%>
dciw 2003-08-07
  • 打赏
  • 举报
回复
<%%>声明函数它不认呀!!
wolfman79 2003-08-07
  • 打赏
  • 举报
回复
不能用<%!,用<%就行了。<%! %>是用来声明变量用的,程序代码用<% %>就行了。
<%!%>是用来声明变量,新类的。比如<%!int i=0;%>,<%!Circle a=new Circle(2.0);%>.注意,<% %>也可以用来声明变量,但它声明的变量是局部变量,而<%!%>中声明的则是全局变量。比如这段代码:

<% int i=2;%>
因为i是局部变量所以i不会增加:i=<%=i++%>
<%! int j=2;%>
因为j是全局变量所以j会不断的增加:j=<%=j++%>

你把它插进你的网页中后,不停的按F5刷新,则j会一直增加,而i就不会。至于if else之类的这就是程序脚本了,它必须放在<% %>之中。

<%! void printhref(Hashtable result)

你这一句就错了,你把"!"去了再试试看。
cowboy1114 2003-08-07
  • 打赏
  • 举报
回复
不要使用<%!%>,用<%%>就可以了

81,095

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧