如何通过window.open将值从一个jsp传递给另一个jsp

时间:2011-04-18 06:23:08

标签: java jsp servlets

我从one.jsp获得gra值如下

<script language="javascript">
function gotoAddPanelAction(elem)
{ 
var st=elem.value;
if(st!="")
{
Popup=window.open('SelectInterviewPannel2.jsp?gra='+st,'Popup','toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes',400,400);
}
else
{
validateForm(document.frm);
}
}
</script>

我正在重新检索SelectInterviewPannel2.jsp中的值,如下所示

<td width="60%" class="txt-lable">
 <Select name="grade" ><option value="" selected>Select</option>
 <%
String gra = request.getParameter("gra");
 if(gra.value=="Level 1") {
%>
<option value="E1">E1</option><option value="E2">E2</option><option value="E3">E3</option><option value="E4">E4</option></select>
<% } else  {%>
 <option value="M1">M1</option><option value="M2">M2</option></select>
<% } %>
 </td>

我的问题出在SelectInterviewPannel2.jsp if if语句未执行。我只得到选择的下拉框而没有值。

3 个答案:

答案 0 :(得分:5)

 if(gra.value=="Level 1") {

不应该使用equals()方法进行字符串比较

一些建议:

答案 1 :(得分:4)

首先为什么这个标题:如何删除java中的整数逗号,它与你的问题不符。

作为回答:

而不是这个

if(gra.value=="Level 1") 

使用此

if(gra.equals("Level 1")) 

在java == 比较引用,而不是值并比较字符串的值,您应该使用.equals(str)

答案 2 :(得分:3)

如果gra参数不存在,request.getParameter("gra")将返回null,使用if(gra.equals("Level 1"))进行比较将抛出Null指针异常。因此,当gra参数不存在时,您可以尝试使用if("Level1".equals(gra))来避免Null指针异常