jsp form 获取form其中一个输入框的参数

wenwen1 发布于 2012/09/04 11:18
阅读 4K+
收藏 0

我的代码如下:

  <%
                String User_ID = request.getParameter("User_ID");
                   String sql = "select * from user where userId="+User_ID;
                   ResultSet rs = dbConn.doQuery(sql);
                     if(rs.next()){
          %>
         <form id="fzr" name="form2" method="post" action="proApplicationSub2.jsp">
          <fieldset>
          <legend>负责人(带*号为必填项)</legend>
           <table>
            <tr><td><label for="User_ID">负责人编号*:</label></td>
                <td><input class="easyui-validatebox" type="text" id="User_ID" name="User_ID" required="true" ></input></td>
                <td align="right"><label for="UserName">负责人*:</label></td>
                <td><input class="easyui-validatebox" type="text" id="UserName" name="UserName" required="true" value='<%=rs.getString("UserName") %>' disabled></input></td></tr>
            <tr><td><label for="msn">院系所部中心*:</label></td>
                <td><input class="easyui-validatebox" type="text" id="msn" name="msn" required="true" value='<%=rs.getString("msn") %>' disabled></input></td>
                <td align="right"><label for="type">人员性质*:</label></td>
                <td><input class="easyui-validatebox" type="text" id="type" name="type" required="true" value='<%=rs.getString("type") %>' disabled></input></td></tr>
            <tr><td><label for="Role_ID">角色*:</label></td>
                <td><select id="role" name="Role_ID"><option>----请选择一种角色-----</option></select></td>
                <td align="right"><label for="grgzl">个人工作量比例*:</label></td>
                <td><input class="easyui-validatebox" type="text" id="grgzl" name="grgzl" required="true" ></input></td></tr>
            <tr><td><label for="xb">性别*:</label></td>
                <td><select id="xb" name="xb"><option><%=rs.getString("xb") %></option></select></td>
                <td align="right"><label for="mz">民族:</label></td>
                <td><input class="easyui-validatebox" type="text" id="mz" name="mz"></input></td></tr>
            <tr><td><label for="zgxl">最高学历:</label></td>
                <td><select id="zgxl" name="zgxl"><option>-----请选择最高学历-----</option></select></td>
                <td align="right"><label for="zgxw">最高学位:</label></td>
                <td><select id="zgxw" name="zgxw"><option>-----请选择最高学位-----</option></select></td></tr>
            <tr><td><label for="zw">专业职务*:</label></td>
                <td><select id="zw" name="zw"><option>------请选择职务------</option></select></td>
                <td align="right"><label for="phone">联系电话:</label></td>
                <td><input class="easyui-validatebox" type="text" id="phone" name="phone" required="true" ></input></td></tr>
             <tr><td><label for="Mob">手机:</label></td>
                <td><input class="easyui-validatebox" type="text" id="Mob" name="Mob" required="true" ></input></td>
                <td align="right"><label for="email">电子邮箱:</label></td>
                <td><input class="easyui-validatebox" type="text" id="email" name="email" required="true" ></input></td></tr>
            <tr><td><label for="csrq">出生日期:</label></td>
                <td><input class="easyui-datebox" type="text" id="csrq" name="csrq" required="true" ></input></td>
                <td align="right"><label for="bz">工作所属学院:</label></td>
                <td><input class="easyui-validatebox" type="text" id="bz" name="bz" required="true"  value='<%=rs.getString("bz") %>' disabled></input></td></tr>
            </table>
        </fieldset>
         <fieldset>
          <legend>项目其他信息(带*号为必填项)</legend>
           <table>
            <tr><td><label for="xmht">项目合同*:</label></td>
                <td><input class="easyui-validatebox" type="file" id="xmht" name="xmht" required="true" ></input></td></tr>
             <tr><td><label for="beiz">备注:</label></td>
                <td><textarea rows="5" cols="60"></textarea></td></tr>
            </table>
        </fieldset>
    <p align="center">
       <input type="submit" name="submit"  value="提交"  onclick="submit();"/>
       <input type="reset" name="reset"  value="重置"/> 
    </p>
</form>
<%
 session.setAttribute("User_ID",User_ID);
}
%>

为什么我加入红色代码之后该form就不显示了,怎么获取User_ID,然后传递到 String sql = "select * from user where userId="+User_ID;中来?

加载中
0
紅顏為君笑
紅顏為君笑

问题在于可能 if(rs.next){

session.setAttribute("User_ID",User_ID);

}

你的form表单 写在 if 外 试试吧

wenwen1
wenwen1
那样不行啊,我要把sql语句中的值传到包括里面的form中去啊,卸在if外会报错的:java.sql.SQLException: Illegal operation on empty result set.
0
louis.he
louis.he

你首先要理清楚思路
你看楼上的 你再想想你错在哪了

wenwen1
wenwen1
楼上的错了,试过了,那样不行啊,我要把sql语句中的值传到包括里面的form中去啊,卸在if外会报错的:java.sql.SQLException: Illegal operation on empty result set.
0
紅顏為君笑
紅顏為君笑
你先看看这句话是什么意思再说也不迟 Illegal operation on empty result set. 很清楚的: empty result set  
wenwen1
wenwen1
我需要做的是当选定了负责人编号时,使user表中userId 等于User_ID,然后form表中的负责人、院系所部中心、人员性质、性别等相应地获取到,不能让用户填写。所以这个User_ID现在是空值。
0
紅顏為君笑
紅顏為君笑

我明白你说什么了  我给你解释一下吧 

1、你开始 说 页面不显示 是因为 jsp从上往下加载 那么此时user_ID为空

 rs中的user 是没有数据的 

所以 if(rs.next())就不成立 所以不会输出你的表单出来

2、你通过request获取 userID 是你input中的User_ID 而不是 label 中的UserID 

所以就会出现 结果集为空的情况啦

0
紅顏為君笑
紅顏為君笑

看你写的代码 你是刚入门的吧 

建议你把if(rs.next())部分 写成这样

User user=new User();

if(rs.next()){

    user.setXXX(rs.getInteger(""));

    ……

}

以下接着你的表单

<form action="" method="post">

<input id='" name="" value="<%=user.getXXX(); %>"

……

</form>

wenwen1
wenwen1
不懂你的意思,我这个User_ID的输入框是要手动输入的。不需要去从数据库读取的。
紅顏為君笑
紅顏為君笑
回复 @wenwen1 : 你把这个改过来不就行了吗 这个你应该会了吧
wenwen1
wenwen1
对的,我想问我的用户编号是要用户输入自己输入的,而不是从user表中获取的。<input value="%user.getXXX();">这是从数据库里直接读取到的啊。
返回顶部
顶部