关于jsp的问题。。请问为什么我写的一直不对呢???

编写一个jiguan.jsp页面,要求提供一个包含各省份名称的下拉列表框,让用户选择其籍贯,提交后,判断用户是否是北京,如果是,则跳入一个欢迎界面,如果不是,则在页面上显示该用户籍贯。
jiguan.jsp
<%@ page contentType="text/html;Charset=GB2312"%>
<html>
<body>
<form action="" method=post name="form">
请选择籍贯:
<Select name="jiguan">
<Option name="jiguan" value="北京">北京
<Option name="jiguan" value="陕西">陕西
<Option name="jiguan" value="四川">四川
</Select>
<input type="submit" name="submit" value="提交">
<%
String jiguan=(String)request.getParameter("jiguan");
if(jiguan.equals("北京"))
response.sendRedirect("welcome.jsp");
else
out.println(jiguan);
%>
</form>
</body>
</html>
welcome.jsp
<%@ page contentType="text/html;Charset=GB2312"%>
<html>
<body>
北京欢迎你!
</body>
</html>

= = 同学你把JAVA和JS混了吧。。你为什么用JAVA来判断JS该做的事呢。。JAVA代码只能在服务器运行。在页面上你需要使用JS

给select 添加一个ID, 并绑定一个方法 。
<select name="jiguan" id="jiguan" onchange="checkJiGuan(this.value);">
option可以不写name 写了也没用。。

之后在页面下部分加上

<script type="text/javascript">
function checkJiGuan(jiguan){
if(jiguan=="北京"){
location.href="welcome.jsp";

}else{
document.write(jiguan);

}

}

</script>

//=========================

不过,另外看你的要求描述, 你这个实现还不能这样弄。
你的要求 是要提交后在服务器判断,之后再选择跳转,这样你还要弄个ACTION或者 SERVLET。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-30
注意设置请求和响应的编码一致,建议使用utf-8,如果出现乱码,自然不会得到你想要的结果。。。
相似回答
大家正在搜