form表单提交给jsp页面,getParameter获取值一直是空 JSPHTML 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没看懂,是想通过getParameter获取“select”选中的值吗? 原则上这样应该可以获取到值的,把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> 我知道是获取p_id的值,但是这个值在2.jsp里是空的,所以我不清楚是哪个细节上出问题了 贴上1.jsp的源代码,才能看出来 我知道是获取p_id的值,但是这个值在2.jsp里是空的,所以我不清楚是哪个细节上出问题了贴上1.jsp的源代码,才能看出来 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");正常。 我知道是获取p_id的值,但是这个值在2.jsp里是空的,所以我不清楚是哪个细节上出问题了贴上1.jsp的源代码,才能看出来1.jsp已经贴过了 System.out.println(rs.getInt("p_id")); /*测试数据库读取是否正常,经测试,正常输出*/ 去掉这句试试 这一句本来是没有的,我是为了确定一下,本来数据库就没读出来,还是post的过程有问题。去掉也不行 这一句本来是没有的,我是为了确定一下,本来数据库就没读出来,还是post的过程有问题。去掉也不行已经解决了吗,你查看页面的源代码<option value="<%=rs.getInt("p_id")%>"> <%=rs.getString("name") %></option> value有值? req.getParameterValues(name) 获取的数组,select 这一句本来是没有的,我是为了确定一下,本来数据库就没读出来,还是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(); 为什么要获取数组的值呢?只有一个select 为什么要获取数组的值呢?只有一个selectselect标签,好像按住ctrl,shift键(两个中的一个) 可以多选, 为什么要获取数组的值呢?只有一个selectselect标签,好像按住ctrl,shift键(两个中的一个) 可以多选,我不是要多选,多选有多选的标签,我会用。 把这两句去掉试试 request.setCharacterEncoding("gb2312"); response.setContentType("text/html;charset=gb2312"); 我记得好像在哪看到过这种问题,貌似是select不能直接使用getparameter这种方式来取值的,取到肯定是空,你查查应该怎么取吧! 你的select没有默认的选中值,可以加个选中值试试,你只是提供了选项,但是并没有选中,所以为空,你试一下! <option value="1" select="selected"> request.setCharacterEncoding("gb2312"); response.setContentType("text/html;charset=gb2312");这两句的问题,去掉就能读出来,但是中文是乱码,不去掉,select的值又不正确 String a = new String(request.getParameter("item").getBytes("ISO-8859"),"gb2312")转码。 servlet 属性取值问题。。。 ajax参数中带有汉字传入后台变为乱码 web服务发布和调用? 求电子邮件正则表达式 ActiveXObject在IE7下创建对象失败的问题 JSP聊天室源码 html问题请教 request问题 poi导出excel的问题 app项目 打开服务器后 手机模拟器连接不上服务器 其他人可以连接 求Spring+freemarker+jdbc的项目 spring整合struts出现了这样的问题,急啊,求大神回答
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>
应该是一个集合。把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");正常。
1.jsp已经贴过了
去掉也不行
去掉也不行已经解决了吗,你查看页面的源代码<option value="<%=rs.getInt("p_id")%>"> <%=rs.getString("name") %></option> value有值?
去掉也不行已经解决了吗,你查看页面的源代码<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();
select标签,好像按住ctrl,shift键(两个中的一个) 可以多选,
select标签,好像按住ctrl,shift键(两个中的一个) 可以多选,
我不是要多选,多选有多选的标签,我会用。
request.setCharacterEncoding("gb2312");
response.setContentType("text/html;charset=gb2312");
response.setContentType("text/html;charset=gb2312");
这两句的问题,去掉就能读出来,但是中文是乱码,不去掉,select的值又不正确
转码。