下面的代码出现运行时错误,注意红色部分,在查询到数据后,错误提示说我数据库中的字段值(如第一条记录“user_name”字段为mao,错误提示为“mao”未定义。这是什么回事啊?是不是和数据库的字符编码有关啊,如何改正?请高手指教!!!
<%@ page contentType="text/html; charset=gbk" language="java" import="java.sql.*,java.util.*"%>
<jsp:useBean id="joyrisingbean" scope="page" class="db.lxtconndb"/>
<!--DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"-->
<html>
<head>
<!--meta http-equiv="Content-Type" content="text/html; charset=gbk" /-->
<title>搜索纪念馆 </title>
<style type="text/css">
<!--
.sssy {
font-size: 12px;
font-style: normal; }
-->
</style>
</head> <body bgcolor="#F0F8FF" onLoad="initIDselect()">
<form id="form1" name="form1" method="post" action="b.jsp" >
<span class="sssy">站内纪念馆搜索:
<select name="ssxx" onchange="onselectxx()" id="ssxx" size="1">
<option value="按纪念馆名" >按纪念馆名 </option>
<option value="按纪念馆号"selected>按纪念馆号 </option>
<option value="按建馆人名">按建馆人名 </option>
<option value="按用户编号">按用户编号 </option>
<option value="按省份">按省份 </option>
<option value="按纪念园区名">按纪念园区名 </option>
<option value="按纪念园区号">按纪念园区号 </option>
</select>
<select name="flxx" size="1" id="flxx">
</select>
<input type="submit" name="sumbit" id="sumbit" value="GO>>>" accesskey="s" />
</span> </form>
<%
String sql = "SELECT * from jnr";
ResultSet rs = joyrisingbean.executeQuery(sql); %>
<script language="javascript">
function initIDselect(){
var flxx=document.getElementById('flxx');
<%rs.beforeFirst();
while(rs.next()){
%>
flxx.options.add(new Option( <%=rs.getInt("jng_id")%>,0));
<%}
%>
}
function onselectxx(){ var flxx=document.getElementById('flxx');
flxx.options.length=0; //清除原有选项;
var ssxx=document.getElementById('ssxx');
var ssxxselectedtext=ssxx.options[ssxx.selectedIndex].text; <% rs.beforeFirst();
while(rs.next()){ %> switch (ssxxselectedtext){
case'按纪念馆号':
flxx.options.add(new Option( <%=rs.getInt("jng_id")%>,0));
break;
case '按建馆人名' :
flxx.options.add(new Option( <%=rs.getString("user_name")%>,0));
break;
case '按纪念馆名':
flxx.options.add(new Option( <%=rs.getString("reg_gm")%>,0));
break; case '按纪念园区名':
flxx.options.add(new Option( <%=rs.getString("reg_yqm")%>,0));
break;
case '按纪念园区号':
flxx.options.add(new Option( <%=rs.getInt("yq_id")%>,0));
case '按省份':
flxx.options.add(new Option( <%=rs.getString("jnr_city")%>,0));
break;
default:
}//end switch
<%}
//end while(rs.next())
//rs.close();
//rs=null; %>
}//end funtion onselectxx()
</script>
</body>
</html>
<%@ page contentType="text/html; charset=gbk" language="java" import="java.sql.*,java.util.*"%>
<jsp:useBean id="joyrisingbean" scope="page" class="db.lxtconndb"/>
<!--DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"-->
<html>
<head>
<!--meta http-equiv="Content-Type" content="text/html; charset=gbk" /-->
<title>搜索纪念馆 </title>
<style type="text/css">
<!--
.sssy {
font-size: 12px;
font-style: normal; }
-->
</style>
</head> <body bgcolor="#F0F8FF" onLoad="initIDselect()">
<form id="form1" name="form1" method="post" action="b.jsp" >
<span class="sssy">站内纪念馆搜索:
<select name="ssxx" onchange="onselectxx()" id="ssxx" size="1">
<option value="按纪念馆名" >按纪念馆名 </option>
<option value="按纪念馆号"selected>按纪念馆号 </option>
<option value="按建馆人名">按建馆人名 </option>
<option value="按用户编号">按用户编号 </option>
<option value="按省份">按省份 </option>
<option value="按纪念园区名">按纪念园区名 </option>
<option value="按纪念园区号">按纪念园区号 </option>
</select>
<select name="flxx" size="1" id="flxx">
</select>
<input type="submit" name="sumbit" id="sumbit" value="GO>>>" accesskey="s" />
</span> </form>
<%
String sql = "SELECT * from jnr";
ResultSet rs = joyrisingbean.executeQuery(sql); %>
<script language="javascript">
function initIDselect(){
var flxx=document.getElementById('flxx');
<%rs.beforeFirst();
while(rs.next()){
%>
flxx.options.add(new Option( <%=rs.getInt("jng_id")%>,0));
<%}
%>
}
function onselectxx(){ var flxx=document.getElementById('flxx');
flxx.options.length=0; //清除原有选项;
var ssxx=document.getElementById('ssxx');
var ssxxselectedtext=ssxx.options[ssxx.selectedIndex].text; <% rs.beforeFirst();
while(rs.next()){ %> switch (ssxxselectedtext){
case'按纪念馆号':
flxx.options.add(new Option( <%=rs.getInt("jng_id")%>,0));
break;
case '按建馆人名' :
flxx.options.add(new Option( <%=rs.getString("user_name")%>,0));
break;
case '按纪念馆名':
flxx.options.add(new Option( <%=rs.getString("reg_gm")%>,0));
break; case '按纪念园区名':
flxx.options.add(new Option( <%=rs.getString("reg_yqm")%>,0));
break;
case '按纪念园区号':
flxx.options.add(new Option( <%=rs.getInt("yq_id")%>,0));
case '按省份':
flxx.options.add(new Option( <%=rs.getString("jnr_city")%>,0));
break;
default:
}//end switch
<%}
//end while(rs.next())
//rs.close();
//rs=null; %>
}//end funtion onselectxx()
</script>
</body>
</html>
楼主【joyrising】截止到2008-07-27 23:22:29的历史汇总数据(不包括此帖):
发帖的总数量:3 发帖的总分数:60 每贴平均分数:20
回帖的总数量:4 得分贴总数量:0 回帖的得分率:0%
结贴的总数量:1 结贴的总分数:20
无满意结贴数:0 无满意结贴分:0
未结的帖子数:2 未结的总分数:40
结贴的百分比:33.33 % 结分的百分比:33.33 %
无满意结贴率:0.00 % 无满意结分率:0.00 %
楼主该结一些帖子了
switch (ssxxselectedtext){
case'按纪念馆号':
LZ的switch写的肯定有问题
switch中只能放整形或者能自动转型成整形的变量
'按纪念馆号'是什么?
编译过不了的
只有c# 里才可以这样写,
<%=rs.getString("user_name")%>,少了一个引号,不用麻烦大家了!不过我找得好辛苦啊!