关于根据select的选择显示不同界面,这段jsp代码有什么错误吗?并没有达到想要的
<select id="opt_select" name="opt_select">
<option value="0">身份证号</option>
<option value="1">姓名</option>
</select>
<%If(request.getParameter("opt_select").Equals("0"))
{
%>
<input type="text" id="txt_id" value="身份证">
<%}
ElseIf(request.getParameter("opt_select").Equals("1"))
{
%>
<input type="text" id="txt_name" value="姓名">
<%
}
%>
结果界面上两个文本框都显示了
初学jsp,不知道这样写错在哪里,请指教,谢谢
追问:可是,我想把它放在一个页面上,该怎么办?
如果一页也可以,像这样:
第一页(first.jsp):
<form action="first.jsp?t=1">
<select id="opt_select" name="opt_select">
<option value="0">身份证号</option>
<option value="1">姓名</option>
</select>
</form>
<%
if (request.getParameter("t")!=null && request.getParameter("t").equals("1") ) {
If(request.getParameter("opt_select").Equals("0")) {
%>
<input type="text" id="txt_id" value="身份证">
<%
} Else If(request.getParameter("opt_select").Equals("1")) {
%>
<input type="text" id="txt_name" value="姓名">
<%
}
}
%>
我刚才尝试了一下,并没有成功。
我是直接把这一段复制进下面代码中*1的位置
<% page language="java"%>
<html>
<body>
*1
</body>
</html>
依然是两个文本框都显示出来了……
怎么回事呐……不好意思,还得追着你问
<%@ page contentType="text/html;charset=gb2312" %>
<form action="first.jsp?t=1" method="post" id="form1">
<select id="opt_select" name="opt_select" onchange="form1.submit()">
<option value="0">--请选择--</option>
<option value="0">身份证号</option>
<option value="1">姓名</option>
</select>
</form>
<%
if(request.getParameter("t")!=null && request.getParameter("t").equals("1")) {
if(request.getParameter("opt_select").equals("0")) {
%>
<input type="text" id="txt_id" value="身份证">
<%
} else if(request.getParameter("opt_select").equals("1")) {
%>
<input type="text" id="txt_name" value="姓名">
<%
}
}
%>
直接拷贝到一个jsp文件中,这样就可以了,试试看,有问题继续叫我!
答案:jsp是服务器端的语言,就是说当你访问jsp页面时,tomcat服务器负责先把jsp代码片段解释执行,然后将结果发向用户浏览器;
你的jsp页面中,向服务器提交request时,并没有opt_select参数,所以用request.getParameter("opt_select")方法返回的应该是null,或者“”。
可以尝试这样:
这是第一页:
<form action="last.jsp">
<select id="opt_select" name="opt_select">
<option value="0">身份证号</option>
<option value="1">姓名</option>
</select>
</form>
第二页(last.jsp)
<%If(request.getParameter("opt_select").Equals("0"))
{
%>
<input type="text" id="txt_id" value="身份证">
<%}
ElseIf(request.getParameter("opt_select").Equals("1"))
{
%>
<input type="text" id="txt_name" value="姓名">
<%
}
%>
你可以尝试一下!
上一个:急!!html页面转换jsp页面后 网页只出现代码,不显示网页,怎么办
下一个:求jsp的新闻发布系统源代码