解决方案 »

  1.   

    没看懂,是想通过getParameter获取“select”选中的值吗?
      

  2.   

    原则上这样应该可以获取到值的,把1.jsp生成的源码发出来看看。
    String a = request.getParameter("item");
    这个a取到的是你1.jsp的rs.getInt("p_id")这个值,而不是rs.getString("name")
    <option value="<%=rs.getInt("p_id")%>"> <%=rs.getString("name") %></option>
      

  3.   

    我知道是获取p_id的值,但是这个值在2.jsp里是空的,所以我不清楚是哪个细节上出问题了
      

  4.   

    贴上1.jsp的源代码,才能看出来
      

  5.   

    我知道是获取p_id的值,但是这个值在2.jsp里是空的,所以我不清楚是哪个细节上出问题了贴上1.jsp的源代码,才能看出来
      

  6.   

    String sql = "select * from place";你这个返回的应该不止一条记录吧。
    应该是一个集合。把java代码删掉,弄成简单的你就知道了。   <form action="2.jsp" method="post">
       <select name="item">
       <option value="Hello">option1</option>
       </select>
       <input type="submit" value="submit"/>
       </form>2.jsp 页面获取 request.getParameter("item");正常。
      

  7.   

    我知道是获取p_id的值,但是这个值在2.jsp里是空的,所以我不清楚是哪个细节上出问题了贴上1.jsp的源代码,才能看出来
    1.jsp已经贴过了
      

  8.   

    System.out.println(rs.getInt("p_id")); /*测试数据库读取是否正常,经测试,正常输出*/ 去掉这句试试
      

  9.   

    这一句本来是没有的,我是为了确定一下,本来数据库就没读出来,还是post的过程有问题。
    去掉也不行
      

  10.   

    这一句本来是没有的,我是为了确定一下,本来数据库就没读出来,还是post的过程有问题。
    去掉也不行已经解决了吗,你查看页面的源代码<option value="<%=rs.getInt("p_id")%>"> <%=rs.getString("name") %></option>  value有值?
      

  11.   

     req.getParameterValues(name) 获取的数组,select
      

  12.   

    这一句本来是没有的,我是为了确定一下,本来数据库就没读出来,还是post的过程有问题。
    去掉也不行已经解决了吗,你查看页面的源代码<option value="<%=rs.getInt("p_id")%>"> <%=rs.getString("name") %></option>  value有值?

    System.out.println(rs.getInt("p_id"));这句代码既然能够输出正确的值,下面value应该是有值的吧,我现在改成下面这样的代码,也是获取不到select的值<% 
    String id = "cdtour",name="cdtour";
    while(rs.next()) { 
    System.out.println(rs.getInt("p_id")); /*测试数据库读取是否正常,经测试,正常输出*/ 
    id = rs.getString("p_id");
    name=rs.getString("name");
     %>
    <option value=<%=id%>><%=name %></option>
     <%
     }
    rs.close();
    con.close();
      

  13.   

    为什么要获取数组的值呢?只有一个select
      

  14.   

    为什么要获取数组的值呢?只有一个select
    select标签,好像按住ctrl,shift键(两个中的一个) 可以多选,
      

  15.   

    为什么要获取数组的值呢?只有一个select
    select标签,好像按住ctrl,shift键(两个中的一个) 可以多选,
    我不是要多选,多选有多选的标签,我会用。
      

  16.   

    把这两句去掉试试
      request.setCharacterEncoding("gb2312");
      response.setContentType("text/html;charset=gb2312");
      

  17.   

    我记得好像在哪看到过这种问题,貌似是select不能直接使用getparameter这种方式来取值的,取到肯定是空,你查查应该怎么取吧!
      

  18.   

    你的select没有默认的选中值,可以加个选中值试试,你只是提供了选项,但是并没有选中,所以为空,你试一下!
      

  19.   

     <option value="1" select="selected"> 
      

  20.   

     request.setCharacterEncoding("gb2312");
      response.setContentType("text/html;charset=gb2312");
    这两句的问题,去掉就能读出来,但是中文是乱码,不去掉,select的值又不正确
      

  21.   

    String a = new String(request.getParameter("item").getBytes("ISO-8859"),"gb2312")
    转码。