高手急救:在jsp中,可不可类似用function或sub函数,怎么定义和调用呀? <%!private void myfunc() {}%>这样定义就可以使用了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 谢谢楼上的,如果还要有参数呢?是不是<%!private void myfunc(id) {}%>对了,怎么调用呀? 就是标准的Java语法啊:<%!private void myfunc(int id) {}%><%myfunc(123);%> 不要想当然的用ASP的思想来写JSP程序 jsp最终被jsp容器转换成servlet类,执行的是转换的servlet,<%! %>中间定义的部分被转换成servlet的成员(成员变量,或方法),而<% %>中间的代码转换的时候放到了响应请求得方法中(别的不知道,jboss是_jspService()方法)。看看servlet就明白了 你在定义的时候遵守java语法就行了,在调用时跟ASP差不多了 高手求救呀! <%! public void ShowSubMenu(int parentID){ if (parentID==10000){ out.println("<ul style='display:none;margin-left:16'>"); out.println("<li style='list-style-image:url(images/icon_default.bmp)'>"); out.println("<a target='targetDestWin' style='margin-left:4' href='editpass.asp'>密码修改</a>"); out.println("</li><br>"); out.println("</ul>"); } else { String sql = "select * from mytree where ParentId="+(String)parentID; ResultSet rs = db.executeQuery(sql); if (rs.next()) { out.println ("<ul style='display:none;margin-left:16'>"&chr(13)&chr(10)); while(rs.next()) { out.println ("<li style='list-style-image:url("); if (rs.getString("ListImage")!=null) { out.println(rs.getString("ListImage")); } else { out.println("images/icon_default.bmp"); } out.println( ")'>"); if (rs.getString("MenuLinkUrl")!=null) { out.println("<a target='targetDestWin' style='margin-left:4' href='"); out.println(rs.getString("MenuLinkUrl")); out.println("'><span style='cursor:default'>"); out.println(rs.getString("MenuText")); out.println("</span></a>"); } else { out.println("<span style='margin-left:4' style='cursor:default'>"); out.println(rs.getString("MenuText")); out.println("</span>"); } out.println("</li><br>"); ShowSubMenu(rs.getInt("id")); } out.println("</ul>"); } }}%>上面的代码有N多处错误!1. out cannot be resolved(out不能被解析)2. db cannot be resolved (不能解析,怎么办呀?)急死了 2楼的方法可以用,但是有缺陷!就是不可以做为全局函数,在别的页面使用!如要想做通用函数在多个页面调用,还是用一个bean要好! 一个关于ext日期时间控件问题 一个merge的问题 如何判断请求是不是成外网跳转过来? web考试系统中实时更新数据 存储过程实现自动插入海量数据?(帮帮忙给点思路)[ 各位GGJJ高分求救!!!Url编码转换成字符编码 高分求解UTF-8编码的问题 请教jsp:plugin加载applet传递参数的一个问题? web.xml配置问题 怎样用变量作为表名,并创建此表 给大家支个招 支持者有分!! 访问JSP文件,显示JAVA_HOME does not point to the JDK,是为什么
是不是
<%!
private void myfunc(id) {
}
%>对了,怎么调用呀?
<%!
private void myfunc(int id) {
}
%>
<%
myfunc(123);
%>
<%!
public void ShowSubMenu(int parentID){
if (parentID==10000){
out.println("<ul style='display:none;margin-left:16'>");
out.println("<li style='list-style-image:url(images/icon_default.bmp)'>");
out.println("<a target='targetDestWin' style='margin-left:4' href='editpass.asp'>密码修改</a>");
out.println("</li><br>");
out.println("</ul>");
}
else
{
String sql = "select * from mytree where ParentId="+(String)parentID;
ResultSet rs = db.executeQuery(sql);
if (rs.next()) {
out.println ("<ul style='display:none;margin-left:16'>"&chr(13)&chr(10));
while(rs.next())
{
out.println ("<li style='list-style-image:url(");
if (rs.getString("ListImage")!=null) {
out.println(rs.getString("ListImage"));
}
else
{
out.println("images/icon_default.bmp");
}
out.println( ")'>");
if (rs.getString("MenuLinkUrl")!=null) {
out.println("<a target='targetDestWin' style='margin-left:4' href='");
out.println(rs.getString("MenuLinkUrl"));
out.println("'><span style='cursor:default'>");
out.println(rs.getString("MenuText"));
out.println("</span></a>");
}
else
{
out.println("<span style='margin-left:4' style='cursor:default'>");
out.println(rs.getString("MenuText"));
out.println("</span>");
}
out.println("</li><br>");
ShowSubMenu(rs.getInt("id"));
}
out.println("</ul>");
}
}
}
%>上面的代码有N多处错误!
1. out cannot be resolved(out不能被解析)
2. db cannot be resolved (不能解析,怎么办呀?)急死了
就是不可以做为全局函数,在别的页面使用!如要想做通用函数在多个页面调用,还是用一个bean要好!