当我们使用jsp从数据库中获取两个texbox中获得相同的值时该怎么办

时间:2017-07-26 11:59:05

标签: javascript java jsp

这是我的jsp代码

 <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
    <%@ page import="java.sql.*" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Drop Downlist</title>

    <script type="text/javascript">

    function getprodqty(selectObject) {
        var value = selectObject.value;  
       //alert(value);
      // document.getElementById("id1").value=document.getElementById("id").value;
       document.getElementById("qut").value=document.getElementById("id").value;
       document.getElementById("price").value=document.getElementById("id").value;


    }
    function calc() {
        var alq = document.getElementById('alq').value;
        var price = document.getElementById('price').value;

        document.getElementById('total').value = alq * price;
    }

    </script>
    <script>
    function myFunction() {
        window.print();
    }
    </script>

    </head>
    <body>
    <%! String driverName = "com.mysql.jdbc.Driver";%>
    <%!String url = "jdbc:mysql://localhost:3306/ab";%>
    <%!String user = "abhishek";%>
    <%!String psw = "admin";%>
    <form action="#" method="post" name="form1">
    <%
    Connection con = null;
    PreparedStatement ps = null;
    try
    {
    Class.forName(driverName);
    con = DriverManager.getConnection(url,user,psw);
    String sql = "SELECT * FROM pro";
    ps = con.prepareStatement(sql);
    ResultSet rs = ps.executeQuery(); 
    %>
    <center><p>Select Name :
    <select name="prodqty" id="id" onchange="getprodqty(this)">

    <%
    while(rs.next())
    {
    String pname = rs.getString("pname"); 
    //int id=rs.getInt("pid");
    int pqty=rs.getInt("pqty");
    int price=rs.getInt("price");
    %>


    <option value="<%=pqty %>"><%=pname %></option>
    <%
    }
    %>
    </select>
    </p></center>

    <center>
    <a style="color:black"><b>Product ID: <input type="text" name="id" id="id1" /></b></a></br>
    <a style="color:black"><b>Available Quantity: <input type="text" name="pqty" id="qut" /></b></a><br /></br>
    </br>
    <center><a style="color:black"><b>Allocate Quantity: <input type="text" name="alq" id="alq" onkeyup="calc()" value=""/></b></a><br /></br>
    </br>
    <center><a style="color:black"><b>Price: &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp<input type="text" name="price" id="price" onkeyup="calc()" value="" /></b></a><br /></br>
    </br>
    <center><a style="color:black"><b>Total: &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp &nbsp<input type="text" name="total" id="total" /></b></a><br /></br>
    </br>
    <a style="color:black"><b>Date: <input type="date" name="date" id="date" /></br>
    <center><button type="submit" class="button button1">SUBMIT</button></center><br>

    <center><button onclick="myFunction()">Print</button></center><br>
    <%
    }
    catch(SQLException sqe)
    { 
    out.println(sqe);
    }
    %>
    </form>
    </body>
    </html>

从数据库中获取时,我的数量和价格都相同,我需要不同的

2 个答案:

答案 0 :(得分:0)

您没有在代码中的任何位置打印 price 变量,我想知道您是如何在JSP中检查它的。

请您提供截图,让我们知道出了什么问题,没问题。一旦您提供了更多详细信息,我就可以编辑我的答案。

答案 1 :(得分:0)

你有一个选项来获得像这样的目标更改代码

while(rs.next())
    {
    String pname = rs.getString("pname"); 
    int id=rs.getInt("pid");
    int pqty=rs.getInt("pqty");
    int price=rs.getInt("price");
    %>


    <option value="<%=id %>"><%=pname %></option>

在此更改之后,您必须将select更改的一个ajax请求发送到servlet或另一个jsp

在jsp中或者你发送代码来查找数量,价格和总数并返回此