[ jeremycod @ 19.05.2006. 22:00 ] @
Imam jedan problem koji nikako da resim. Potrebno mi je da iz drop down liste u HTML formi procitam sve podatke bez obzira da li ih je korisnik selektovao ili ne. Naime, napravio sam formu koja se sastoji iz 2 drop down liste pri cemu korisnik iz liste ponudjenih elemenata klikom na dugme Add ili Remove dodaje ili uklanja elemente u praznu listu. Ono sto mi predstavlja problem je kako da u drugoj JSP strani koja obradjuje formu, preuzmem podatke iz liste u koju je korisnik dodao odredjene elemente, a da pri tome korisnik ne mora ponovo da selektuje te elemente.

[ veljaradenkovic @ 19.05.2006. 23:17 ] @
Stvar je jednostavna. Vrednosti koje nisu selektovane ne putuju sa requestom. Dakle ostaje ti da ih selektujes pre submita:

(Varijacija je na temu da u ovom gore JavaScript loopu procitas vrednosti svakog OPTIONa i da ih smestis u hidden field u formatu koji ti odgovara.)

Evo prve varijante:

Code:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Example</title>
<script language="JavaScript">
    function submitListValues()
    {
        var lst = document.getElementById("select1");
        var items = lst.options;
        
        for(i = 0; i < items.length; i++)
        {
            items[i].selected = true;
        }
        document.form1.submit();
    }
</script>
</head>
<body>
    <form name="form1" action="display.jsp" method="POST">
        <select multiple="multiple" name="select1" id="select1">
            <option value="Pera">Pera</option>
            <option value="Mika">Mika</option>
            <option value="Zika">Zika</option>
            <option value="Steva">Steva</option>
            <option value="Zoran">Zoran</option>
        </select>
        <input type="button" onClick="submitListValues();">
    </form>
</body>
</html>



I onda procitas iz requesta:
Strana display.jsp
Code:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ page import="java.util.Enumeration" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Prikaz vrednosti</title>
</head>
<body>
<%
    Enumeration names = request.getParameterNames();
    while(names.hasMoreElements())
    {
        String paramName = names.nextElement().toString();
        String[] paramValues = request.getParameterValues(paramName);
        out.println("<li>" + paramName);
        
        for(String val : paramValues)
        {
            out.println(val);
            out.println("<br>");
        }
    }
%>
</body>
</html>



Velja
[ jeremycod @ 20.05.2006. 09:48 ] @
Veljo,

Hvala na pomoci. To je upravo ono sto mi je trebalo.