JSP未检索文本字段值

时间:2016-09-02 12:36:51

标签: jsp

我正在编写一个简单的JSP代码,该代码应该采用文本框值,形成一个sql,执行并将结果返回给另一个文本字段。我得到一个空洞的结果。以下是我的代码。

如果语句中没有条件,例如选择名字if rownum<1,则驱动程序正在运行并设置值,因此我确信它已注册正常。

<html>
<head>
<title>Holiday Master</title>
</head>
<body>
<%@ page import = "java.sql.*" %> 
<div>

        <input id="input1" name="Text1" type="text"><input id="input2" name="Text2" type="text"><input name="Button1" onclick="get_data()" type="button" value="button"></div>
<script>
function get_data()
{
<%
    DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
    Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","hr","hr");
    Statement stmt  = conn.createStatement();
    String sql2 = request.getParameter("input1"); 
    String sql="select last_name from employees where first_name ='"+sql2+"'";
    ResultSet rs = stmt.executeQuery(sql);
    try
    {
    if(rs!=null)
    {

    while(rs.next())
    {
    %>

   document.getElementById("input2").value="<%=rs.getString("last_name")%>";    

    <%
    }
    }        
    }
    catch(SQLException e)
    {
        e.printStackTrace();
    }
    stmt.close();
    rs.close();
    conn.close();
    stmt=null;
    rs=null;
    conn=null;
    %>



}

</script>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

您正在混合使用两种不同的代码。关键是要实现每个代码执行时 - 在请求和呈现页面时服务器上的JSP(即之前响应发送到浏览器)和浏览器中的Javascript, 后,浏览器会收到已生成的响应。