用request.getParameter("")得到的参数为什么是空的?

yinliangzhi 2004-09-10 04:22:04
我在一个网页中,用到另外一个网页的值,我使用request.getParameter("aa"),为什么得到的全是空值?
...全文
304 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Ronanljy 2004-09-11
  • 打赏
  • 举报
回复
初学者容易犯的错误。
dafei0320 2004-09-11
  • 打赏
  • 举报
回复
呵呵!form里就一个提交啊?
值都没有?
快放进去吧!
tangbow 2004-09-10
  • 打赏
  • 举报
回复
将文本狂放到 form表单里 就好了
yinliangzhi 2004-09-10
  • 打赏
  • 举报
回复
我太粗心了!打自己一个耳光!
phptong 2004-09-10
  • 打赏
  • 举报
回复
晕,你没把text这个表单元素没有在form表单里,传给另个页面当然是null值了,做事要仔细
yinliangzhi 2004-09-10
  • 打赏
  • 举报
回复
ding
yinliangzhi 2004-09-10
  • 打赏
  • 举报
回复
第一个页面:

<%@ page contentType="text/html;charset=GBK" %>
<%@ page language="java" import="java.sql.*" %>

<!-- !!!<%@ page import="ConnOracle" %> -->

<jsp:useBean id="connDb" scope="page" class="ConnOracle"/>


<html>
<head>
<title>无标题文档</title>
</head>


<body>


<!--<form name="form1" method="post" action="">-->

<table width="50%" border="0" align="center">
<tr>
<td align="center"><font size="+3">用户维护</font></td>
</tr>
</table>
<hr>
<table width="93%" border="1" align="center">
<tr>
<th scope="col"> 
</th>
<th scope="col"> 
</th>
<th scope="col"> 
</th>
<th scope="col"> </th>
</tr>
<tr bgcolor="#ccccff">
<td width="30%">
<div align="center"> <font color="#ff0033" size="3" > <b> 用户名</b></font> </div>
</td>
<td width="23%">
<div align="center"> <font color="#ff0033"> <b> 权限</b></font> </div>
</td>
<td width="26%">
<div align="center"> <font color="#ff0033"> <b> 备注</b></font> </div>
</td>
<td width="21%"> </td>
</tr>


<%
// out.println(session.getAttribute("quanxian_xuanze"));
ResultSet RS_result=null;
RS_result=connDb.executeQuery("select * from qx");
//String quanxian="";
%>

<% while(RS_result.next())
{
//out.println(java.util.Date())
%>
<tr>
<td width="30%"> <div align="center"> <font color="#ff0033"> <b><%= RS_result.getString(1) %> </b></font> </div> </td>
<td width="23%"> <div align="center"> <font color="#ff0033"> <b><%= RS_result.getString(2) %> </b></font> </div> </td>
<td width="26%">
<div align="center"> <font color="#ff0033"> <b><%= RS_result.getString(3) %> </b></font> </div>
</td>
<td width="21%" align="center"><input type="submit" name="Submit" value=" 修 改 ">
<input type="submit" name="Submit" value=" 删 除 ">
</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>

<%
}
RS_result.close();
%>

</table>


<hr>
<table width="93%" border="0" align="center">
<tr bgcolor="#ccccff">
<td align="left" bgcolor="#ccccff"><font size="4">添加项目</font></td>
</tr>
</table>
<table width="93%" border="0" align="center">
<tr>
<td width="31%" align="left"><font color="#ff0033"><b>用户
<input name="textyonghu" type="text">
</b></font></td>
<td width="15%" align="left"><font color="#ff0033"><b>权限</b></font>
<font color="#ff0033"><b>
<select name="selectquanxian" >
<option value="A">A</option>
<option selected>B</option>
<option>C</option>
<option>D</option>
</select>
</b></font></td>
<td width="31%" align="left"><font color="#ff0033"><b>备注
<input name="textbeizhu" type="text">
</b></font></td>
<td width="23%" align="center">
<form action="tianjia.jsp" method="post" >
<input type="submit" name="Submit" value=" 添加" >
</form>
</td>
</tr>
</table>
<!--</form>-->
</body>
</html>


第二个页面:

<%@ page contentType="text/html;charset=GBK" %>
<%@ page language="java" import="java.sql.*" %>

<!-- !!!<%@ page import="ConnOracle" %> -->

<jsp:useBean id="connDb" scope="page" class="ConnOracle"/>

<%
String tianjia_yonghuming=request.getParameter("textyonghu");
String tianjia_quanxian="C";
session.setAttribute("quanxian_xuanze","xx");//request.getParameter("select_quanxian"));
String tianjia_beizhu=request.getParameter("textbeizhu");

if (tianjia_yonghuming ==null){
tianjia_yonghuming="aa";
}

//if (tianjia_yonghuming != null && tianjia_yonghuming.length()>0){
//ResultSet RS_result=null;
//RS_result=connDb.executeQuery("select * from qx");

String sql ="insert into qx values"+"("+"'"+tianjia_yonghuming+"','"+tianjia_quanxian+"','"+tianjia_beizhu+"' "+")";

// String sql ="insert into qx values('xx','B','ff')";

connDb.executeUpdate(sql);


//}
%>

<jsp:forward page="qx.jsp"/>



wizardnjau 2004-09-10
  • 打赏
  • 举报
回复
这种情况既然已经知道是null的话就可以找找原因了嘛,无非就是两个页面,要是帖出代码就很快能够解决
weepp 2004-09-10
  • 打赏
  • 举报
回复
就是吗?!
flyxxxxx 2004-09-10
  • 打赏
  • 举报
回复
表单中如果有<input type="file">那用这种方法得到的一定是null(要使用smartupload)
tangbow 2004-09-10
  • 打赏
  • 举报
回复
94
贴出前面一个代码
phptong 2004-09-10
  • 打赏
  • 举报
回复
把前一个页面的代码贴出来看看,就是要传值出来的页面
EL表达式的简单介绍 一、JSP EL语言定义 E L(Expression Language) 目的:为了使JSP写起来更加简单。 表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法。它是一种简单的语言,基于可用的命名间(PageContext 属性)、嵌套属性和对集合、操作符(算术型、关系型和逻辑型)的访问符、映射到 Java 类中静态方法的可扩展函数以及一组隐式对象。 EL 提供了在 JSP 脚本编制元素范围外使用运行时表达式的功能。脚本编制元素是指页面中能够用于在 JSP 文件中嵌入 Java 代码的元素。它们通常用于对象操作以及执行那些影响所生成内容的计算。JSP 2.0 将 EL 表达式添加为一种脚本编制元素。 二、JSP EL简介 1、语法结构 ${expression} 2、[ ]与.运算符 EL 提供“.“和“[ ]“两种运算符来存取数据。 当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用“[ ]“。例如: ${user.My-Name}应当改为${user["My-Name"] } 如果要动态取值时,就可以用“[ ]“来做,而“.“无法做到动态取值。例如: ${sessionScope.user[data]}中data 是一个变量 3、变量 EL存取变量数据的方法很简单,例如:${username}。它的意思是取出某一范围中名称为username的变量。 因为我们并没有指定哪一个范围的username,所以它会依序从Page、Request、Session、Application范围查找。 假如途中找到username,就直接回传,不再继续找下去,但是假如全部的范围都没有找到时,就回传null。 属性范围在EL中的名称 Page PageScope Request RequestScope Session SessionScope Application ApplicationScope 二、JSP EL 中的有效表达式 有效表达式可以包含文字、操作符、变量(对象引用)和函数调用。我们将分别了解这些有效表达式中的每一种: 1、文字 JSP 表达式语言定义可在表达式中使用的以下文字: 文字 文字的值 Boolean true 和 false Integer 与 Java 类似。可以包含任何正数或负数,例如 24、-45、567 Floating Point 与 Java 类似。可以包含任何正的或负的浮点数,例如 -1.8E-45、4.567 String 任何由单引号或双引号限定的字符串。对于单引号、双引号和反斜杠,使用反斜杠字符作为转义序列。必须注意,如果在字符串两端使用双引号,则单引号不需要转义。 Null null 2、操作符 JSP 表达式语言提供以下操作符,其中大部分是 Java 中常用的操作符: 术语 定义 算术型 +、-(二元)、*、/、div、%、mod、-(一元) 逻辑型 and、&&、or、||、!、not 关系型 ==、eq、!=、ne、、gt、<=、le、>=、ge。可以与其他值进行比较,或与布尔型、字符串型、整型或浮点型文字进行比较。 操作符是前缀操作,可用于确定值是否为。 条件型 A ?B :C。根据 A 赋值的结果来赋值 B 或 C。 3、隐式对象 JSP 表达式语言定义了一组隐式对象,其中许多对象在 JSP scriplet 和表达式中可用: 术语 JSP 页的上下文。它可以用于访问 JSP 隐式对象,如请求、响应、会话、输出、servletContext 等。例如,${pageContext.response} 为页面的响应对象赋值。 此外,还提供几个隐式对象,允许对以下对象进行简易访问: 术语 定义 param 将请求参数名称映射到单个字符串参数值(通过调用 ServletRequest.getParameter (String name) 获得)。getParameter (String) 方法返回带有特定名称的参数。表达式 $(param.name) 相当于 request.getParameter (name)。 paramValues 将请求参数名称映射到一个数值数组(通过调用 ServletRequest.getParameter (String name) 获得)。它与 param 隐式对象非常类似,但它检索一个字符串数组而不是单个值。表达式 ${paramvalues.name) 相当于 request.getParamterValues(name)。 header 将请求头名称映射到单个字符串头值(通过调用 ServletRequest.getHeader(String name) 获得)。表达式 ${header.name} 相当于 request.getHeader(name)。 headerValues 将请求头名称映射到一个数值数组(通过调用 ServletRequest.getHeaders(String) 获得)。它与头隐式对象非常类似。表达式 ${headerValues.name} 相当于 request.getHeaderValues(name)。 cookie 将 cookie 名称映射到单个 cookie 对象。向服务器发出的客户端请求可以获得一个或多个 cookie。表达式 ${cookie.name.value} 返回带有特定名称的第一个 cookie 值。如果请求包含多个同名的 cookie,则应该使用 ${headerValues.name} 表达式。 initParam 将上下文初始化参数名称映射到单个值(通过调用 ServletContext.getInitparameter(String name) 获得)。 除了上述两种类型的隐式对象之外,还有些对象允许访问多种范围的变量,如 Web 上下文、会话、请求、页面: 术语 定义 pageScope 将页面范围的变量名称映射到其值。例如,EL 表达式可以使用 ${pageScope.objectName} 访问一个 JSP 中页面范围的对象,还可以使用 ${pageScope.objectName.attributeName} 访问对象的属性。 requestScope 将请求范围的变量名称映射到其值。该对象允许访问请求对象的属性。例如,EL 表达式可以使用 ${requestScope.objectName} 访问一个 JSP 请求范围的对象,还可以使用 ${requestScope.objectName.attributeName} 访问对象的属性。 sessionScope 将会话范围的变量名称映射到其值。该对象允许访问会话对象的属性。例如: $sessionScope.name} applicationScope 将应用程序范围的变量名称映射到其值。该隐式对象允许访问应用程序范围的对象。 三、特别强调: 1、注意当表达式根据名称引用这些对象之一时,返回的是相应的对象而不是相应的属性。例如:即使现有的 pageContext 属性包含某些其他值,${pageContext} 也返回 PageContext 对象。 2、 注意 <%@ page isELIgnored="true" %> 表示是否禁用EL语言,TRUE表示禁止.FALSE表示不禁止.JSP2.0中默认的启用EL语言。 四、举例说明 1、例如, < %=request.getParameter(“username”)% > 等价于 ${ param.username } 2、例如,但是下面的那句EL语言可以完成如果得到一个username为,则不显示null,而是不显示值。 userName: request.getParameter("name")获得参数值为null和""字符串的情况 1.获取到的值为" "字符串 当name属性存在,但是没有值的时候后台用request.getParameter("name")获得的是字符串"" 2.获取到的值为null 当没有name属性,request.getParameter("name")获取的值是null

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧