Ciao a tutti
Ho un form nel quale uso questa funzione per aggiornare i campi ogni volta che l utente seleziona un campo diverso dalla <select>. L unico problema è che il codice cn la connessione a database. in questa funzione sembra non leggere il pezzo di codice racchiso tra <% %>.
codice:
</script>
    
    <form name="form2" action="InserimentocampimodificatiCostoOrario.jsp">
    <script type="text/javascript">
    <%
    
    String annocosto="";
    String annocosto3="";
    String orario="";
    String cf="";
    
    %>
    function setCost(id,anno){
        
        alert('eccomi e id vale'+id+' mentre anno vale '+anno);
        form1.nuovoanno.value=anno;
        form2.anno.value=id;
    //form1.submit();
    //form2.submit();
        <%
        String id3=request.getParameter("vecchiocosto");
        Class.forName("com.mysql.jdbc.Driver");
            Connection conn2 = DriverManager.getConnection("jdbc:mysql://localhost:3306/db","user","password");
            Statement statement2 = conn2.createStatement();
            ResultSet rs2 = statement2.executeQuery("select * FROM costoorario where CostoOrario='"+id3+"'");
            String vecchioanno="";
            String id2 = "";
            String annocosto2="";
            String orario2="";
            String cf2="";
            while (rs2.next()) {
                id2 = rs2.getString("IdCosto");
                annocosto2=rs2.getString("Anno");
                orario2=rs2.getString("CostoOrario");
                cf2=rs2.getString("CF");
    
        }
    %>
        alert('eccomi e id3 vale'+id3);
    
        
    return true;
    }
    </script>
    <tr>
        <td><i> Scegli costo orario su cui apportare modifiche</i></td>
        <%
        String id = "0";
        %>
        <td align="left"><select name="vecchiocosto" onchange="setCost(form.vecchiocosto.value,form.annoprovv.value);">
        
            <%
            
                Class.forName("com.mysql.jdbc.Driver");
                    Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db","user","pass");
                    Statement statement = conn.createStatement();
                    ResultSet rs = statement.executeQuery("select * FROM costoorario");
                     id = "";
                     
                    while (rs.next()) {
                        id = rs.getString("IdCosto");
                        annocosto=rs.getString("Anno");
            %>
            
            <option value="<%=id%>"><%=annocosto%></option>


    <%
            Class.forName("com.mysql.jdbc.Driver");
            Connection conn4 = DriverManager.getConnection("jdbc:mysql://localhost:3306/db","user","pass");
            Statement statement4 = conn4.createStatement();
            ResultSet rs4 = statement4.executeQuery("select * FROM costoorario WHERE IdCosto='"+id+"'");
            annocosto3="";
             orario="";
             cf="";
            while (rs4.next()) {
                annocosto3=rs4.getString("Anno");
                orario=rs4.getString("CostoOrario");
                cf=rs4.getString("CF");
            }
                }
                    
                    
                    
            %>
        </select></td>
        <input type="hidden" name="annoprovv" value="<%=annocosto3%>" size="25" />
        <br>