Hello and welcome to our community! Is this your first visit?
Register
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 3 of 3
  1. #1
    New to the CF scene
    Join Date
    Dec 2003
    Posts
    4
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Names for dynamically added list boxes

    I have a HTML form which contains a button. When the button is pressed a function is called which queries the database and displays a list box(list box populated with values from the database). This way user can add any number of list boxes.

    Here is my code

    client.jsp
    /*************************/
    <%@page contentType="text/html"%>
    <html>
    <head>
    <script type="text/javascript" src="scripts.jsp"></script>
    </head>
    <body>
    <form action="submitAddClient.jsp">
    <div id="container"></div>
    <input type="button" onclick="insSelect();" value="Add Dept" />
    <input type="submit">

    </form>
    </body>
    </html>
    /*********************/
    Here is scripts.jsp
    /********************/

    var myDataArray = new Array(
    <%
    con = ConnectionManager.getConnection();
    stmt=con.createStatement();
    rs=stmt.executeQuery("SELECT dept_name FROM department ");

    while( rs.next() )
    {
    data = rs.getString(1);
    out.println("\"" + data + "\",");
    }
    out.println("\"\"");
    con.close();
    %>
    );

    function insSelect()
    {
    var containerElement= document.getElementById("container");
    var newSelectElement = document.createElement("select");
    newSelectElement.name="dept_name"; //Problem Line
    for (i=0; i < (myDataArray.length - 1); i++)
    {

    var newOptionElement = document.createElement("option");
    newOptionElement.setAttribute("value", myDataArray[i]);
    newOptionElement.innerHTML = myDataArray[i];

    newSelectElement.appendChild(newOptionElement);
    }

    containerElement.appendChild(newSelectElement);
    }



    /*************************/

    This all works fine.
    But there is one problem.
    Each select box is created with the name "dept_name" (when the button is pressed more than once and hence there are more than one list boxes). So when i submit the form I get value of only one list box(even when there are multiple list boxes).

  • #2
    Supreme Master coder! glenngv's Avatar
    Join Date
    Jun 2002
    Location
    Philippines
    Posts
    11,032
    Thanks
    0
    Thanked 248 Times in 245 Posts
    Won't you get an array of dept_name when you retrieve the value of the select boxes from JSP?

    Something like this?

    <%
    String[] deptNames = request.getParameterValues("dept_name");
    %>

  • #3
    New to the CF scene
    Join Date
    Dec 2003
    Posts
    4
    Thanks
    0
    Thanked 0 Times in 0 Posts
    thanks a lot


  •  

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts
    •