请问下大家把Java 查询到的List 结果集来赋给JS变量,可以吗? 我想把Java 查询到的List 结果集来赋给JS变量,这样可以吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看来你对WEB B/S结构的题解还不清楚,JAVA是要WEB服务器端运行,而JS是在客户端运,肯定是不能把Java 查询到的List 结果集来赋给JS变量,你只能把它在JSP中取出来放到JS的ARRAY中. 给你一段 ArrayList 应用代码块,你看一看~ 大家也帮我挑一下问题~~ 无参数的 public ArrayList getPageinfo() { ResultSet rs=null; ArrayList arrayPage=new ArrayList(); String sql = "select pageid,pagename,pageaddress,pagefontcolor,pagequote,pagefontembellish from pageinfo"; db.setConn(); db.getPstt(sql); rs=db.getRs(); try { while (rs.next()) { ArrayList pagelist = new ArrayList(); pagelist.add(rs.getString("pageid")); pagelist.add(rs.getString("pagename")); pagelist.add(rs.getString("pageaddress")); pagelist.add(rs.getString("pagefontcolor")); pagelist.add(rs.getString("pagequote")); pagelist.add(rs.getString("pagefontembellish")); arrayPage.add(pagelist); }return arrayPage; } catch (SQLException e) { e.printStackTrace(); }return arrayPage; }下面是页面取值的<%@ page import="java.util.ArrayList" %><%@ page import="nanhu.comm.defaultinfo.readinfo" %><%@ page import="nanhu.comm.defaultinfo.pageinfoBean" %><%String pageid="1";String err="对不起,对不起,您要浏览的页面正在维护中...";pageinfoBean pageinfo=new pageinfoBean();int count=pageinfo.getCount();readinfo info=new readinfo();ArrayList arrayOlyTit=(ArrayList)info.getNewsinfo(pageid);%><%String path=request.getContextPath();%><%int arrcount=arrayOlyTit.size();if(arrcount==0){%><%=err%><%}else if(arrcount>count){ for(int i=0;i<count;i++){ ArrayList listOlyTit=(ArrayList)arrayOlyTit.get(i); Object titName=listOlyTit.get(1); String tit=titName.toString(); if(tit.length()>10){ String title=tit.substring(0,10); title=title+"...";%><input type="hidden" name="pageid" value="<%=pageid%>"/><input type="hidden" name="titid" value="<%=listOlyTit.get(0)%>"/><input type="hidden" name="actid" value="<%=listOlyTit.get(11)%>"/> <%=listOlyTit.get(6) %><a href="<%=path%>/indexheadOlyAction.do?pageid=<%=pageid%>&titid=<%=listOlyTit.get(0)%>&actid=<%=listOlyTit.get(11)%>" name="olytit" target="_blank"><%=listOlyTit.get(5)%><%=listOlyTit.get(6) %><%=title%></a><%=listOlyTit.get(7) %><%=listOlyTit.get(7) %><%}else{%><input type="hidden" name="pageid" value="<%=pageid%>"/><input type="hidden" name="titid" value="<%=listOlyTit.get(0)%>"/><input type="hidden" name="actid" value="<%=listOlyTit.get(11)%>"/> <%=listOlyTit.get(6) %><a href="<%=path%>/indexheadOlyAction.do?pageid=<%=pageid%>&titid=<%=listOlyTit.get(0)%>&actid=<%=listOlyTit.get(11)%>" name="olytit" target="_blank"><%=listOlyTit.get(5)%><%=listOlyTit.get(6) %><%=titName %></a><%=listOlyTit.get(7) %><%=listOlyTit.get(7) %><%}%><%}%><%}else if(arrcount<=count){ for(int i=0;i<arrcount;i++){ ArrayList listOlyTit=(ArrayList)arrayOlyTit.get(i); Object titName=listOlyTit.get(1); String tit=titName.toString(); if(tit.length()>10){ String title=tit.substring(0,10); title=title+"..."; %><input type="hidden" name="pageid" value="<%=pageid%>"/><input type="hidden" name="titid" value="<%=listOlyTit.get(0)%>"/><input type="hidden" name="actid" value="<%=listOlyTit.get(11)%>"/> <%=listOlyTit.get(6) %><a href="<%=path%>/indexheadOlyAction.do" name="olytit" target="_blank"><%=listOlyTit.get(5)%><%=listOlyTit.get(6) %><%=title%></a><%=listOlyTit.get(7) %><%=listOlyTit.get(7) %><%}else{%><input type="hidden" name="pageid" value="<%=pageid%>"/><input type="hidden" name="titid" value="<%=listOlyTit.get(0)%>"/><input type="hidden" name="actid" value="<%=listOlyTit.get(11)%>"/> <%=listOlyTit.get(6) %><a href="<%=path%>/indexheadOlyAction.do" name="olytit" target="_blank"><%=listOlyTit.get(5)%><%=listOlyTit.get(6) %><%=titName %></a><%=listOlyTit.get(7) %><%=listOlyTit.get(7) %><%}%><%}%><%}%>呵呵,写得不太好~~ 但肯定是运转正常的~ 顺便也帮我看看有什么问题 可以的,嵌套一下,因为java代码片段在服务器端运行,运行生成的结果放在生成的静态页面中再发送到用户浏览器端,浏览器再运行js代码,比如:<script language="javascript"> var a="<%out.print("hello");%>";</script>实际上到了用户浏览器端就会执行:<script language="javascript"> var a="hello";</script> 有个问题,进来看看吧 关于可输入下拉框的样式 关于JAVA WEB的学习 30分求教如何在servlet里设一个计数器变量? 程序没有问题,可就是连不上数据库,这个错误怎么解决? 小问题 小菜高分请教 jsp与数据库的怪问题!?是怎么回事啊!? help 如何判断外部JS加载完成 jsp一个iframe间传值的问题 JDBC连接ACCESS数据库问题
无参数的
public ArrayList getPageinfo() {
ResultSet rs=null;
ArrayList arrayPage=new ArrayList();
String sql = "select pageid,pagename,pageaddress,pagefontcolor,pagequote,pagefontembellish from pageinfo";
db.setConn();
db.getPstt(sql);
rs=db.getRs();
try {
while (rs.next()) {
ArrayList pagelist = new ArrayList();
pagelist.add(rs.getString("pageid"));
pagelist.add(rs.getString("pagename"));
pagelist.add(rs.getString("pageaddress"));
pagelist.add(rs.getString("pagefontcolor"));
pagelist.add(rs.getString("pagequote"));
pagelist.add(rs.getString("pagefontembellish"));
arrayPage.add(pagelist);
}return arrayPage;
} catch (SQLException e) {
e.printStackTrace();
}return arrayPage; }
下面是页面取值的<%@ page import="java.util.ArrayList" %>
<%@ page import="nanhu.comm.defaultinfo.readinfo" %>
<%@ page import="nanhu.comm.defaultinfo.pageinfoBean" %>
<%
String pageid="1";
String err="对不起,对不起,您要浏览的页面正在维护中...";
pageinfoBean pageinfo=new pageinfoBean();
int count=pageinfo.getCount();
readinfo info=new readinfo();
ArrayList arrayOlyTit=(ArrayList)info.getNewsinfo(pageid);
%>
<%
String path=request.getContextPath();
%>
<%
int arrcount=arrayOlyTit.size();
if(arrcount==0){
%>
<%=err%>
<%}
else if(arrcount>count){
for(int i=0;i<count;i++){
ArrayList listOlyTit=(ArrayList)arrayOlyTit.get(i);
Object titName=listOlyTit.get(1);
String tit=titName.toString();
if(tit.length()>10){
String title=tit.substring(0,10);
title=title+"...";
%><input type="hidden" name="pageid" value="<%=pageid%>"/>
<input type="hidden" name="titid" value="<%=listOlyTit.get(0)%>"/>
<input type="hidden" name="actid" value="<%=listOlyTit.get(11)%>"/> <%=listOlyTit.get(6) %><a href="<%=path%>/indexheadOlyAction.do?pageid=<%=pageid%>&titid=<%=listOlyTit.get(0)%>&actid=<%=listOlyTit.get(11)%>" name="olytit" target="_blank"><%=listOlyTit.get(5)%><%=listOlyTit.get(6) %><%=title%></a><%=listOlyTit.get(7) %><%=listOlyTit.get(7) %>
<%}else{
%><input type="hidden" name="pageid" value="<%=pageid%>"/>
<input type="hidden" name="titid" value="<%=listOlyTit.get(0)%>"/>
<input type="hidden" name="actid" value="<%=listOlyTit.get(11)%>"/>
<%=listOlyTit.get(6) %><a href="<%=path%>/indexheadOlyAction.do?pageid=<%=pageid%>&titid=<%=listOlyTit.get(0)%>&actid=<%=listOlyTit.get(11)%>" name="olytit" target="_blank"><%=listOlyTit.get(5)%><%=listOlyTit.get(6) %><%=titName %></a><%=listOlyTit.get(7) %><%=listOlyTit.get(7) %>
<%}%>
<%}%>
<%}
else if(arrcount<=count){
for(int i=0;i<arrcount;i++){
ArrayList listOlyTit=(ArrayList)arrayOlyTit.get(i);
Object titName=listOlyTit.get(1);
String tit=titName.toString();
if(tit.length()>10){
String title=tit.substring(0,10);
title=title+"...";
%><input type="hidden" name="pageid" value="<%=pageid%>"/>
<input type="hidden" name="titid" value="<%=listOlyTit.get(0)%>"/>
<input type="hidden" name="actid" value="<%=listOlyTit.get(11)%>"/> <%=listOlyTit.get(6) %><a href="<%=path%>/indexheadOlyAction.do" name="olytit" target="_blank"><%=listOlyTit.get(5)%><%=listOlyTit.get(6) %><%=title%></a><%=listOlyTit.get(7) %><%=listOlyTit.get(7) %>
<%}else{%><input type="hidden" name="pageid" value="<%=pageid%>"/>
<input type="hidden" name="titid" value="<%=listOlyTit.get(0)%>"/>
<input type="hidden" name="actid" value="<%=listOlyTit.get(11)%>"/>
<%=listOlyTit.get(6) %><a href="<%=path%>/indexheadOlyAction.do" name="olytit" target="_blank"><%=listOlyTit.get(5)%><%=listOlyTit.get(6) %><%=titName %></a><%=listOlyTit.get(7) %><%=listOlyTit.get(7) %>
<%}%>
<%}%>
<%}%>呵呵,写得不太好~~ 但肯定是运转正常的~ 顺便也帮我看看有什么问题
<script language="javascript">
var a="<%out.print("hello");%>";
</script>
实际上到了用户浏览器端就会执行:
<script language="javascript">
var a="hello";
</script>