Foros del Web » Programando para Internet » Javascript »

Cargar datos en un select en JSP

Estas en el tema de Cargar datos en un select en JSP en el foro de Javascript en Foros del Web. Hola a todos tengo el siguiente problema: quiero cargar los datos de una base de datos en un select de un archivo JSP. Este es ...
  #1 (permalink)  
Antiguo 30/01/2015, 13:41
 
Fecha de Ingreso: noviembre-2014
Mensajes: 27
Antigüedad: 9 años, 5 meses
Puntos: 0
Cargar datos en un select en JSP

Hola a todos tengo el siguiente problema: quiero cargar los datos de una base de datos en un select de un archivo JSP. Este es el archivo JSP:

Código HTML:
Ver original
  1.     <head>
  2.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  3.         <title>JSP Page</title>
  4.         <link rel="stylesheet" href="css/estilo.css" type="text/css">
  5.         <script type="text/javascript" src="ajax.js"></script>
  6.     </head>
  7.     <body onload="cargarDatos()">
  8.         <div id="seleccion">
  9.             <table>
  10.                 <tbody>
  11.                     <tr>
  12.                         <td>Origen
  13.                             <select name="origen" id="origen">
  14.                                 <% ArrayList listaAeropuertos=(ArrayList)request.getSession().getAttribute("listaAeropuertos");
  15.                                   for(int i=0;i<listaAeropuertos.size();i++){ %>
  16.                                    <option value="<%=listaAeropuertos.get(i) %>"><%=listaAeropuertos.get(i) %></option>
  17.                                    <% } %>
  18.                             </select>
  19.                         </td>
  20.                         <td>Destino
  21.                             <select name="destino">
  22.                                 <option></option>
  23.                             </select>
  24.                         </td>
  25.                         <td><br></td>
  26.                     </tr>
  27.                     <tr>
  28.                         <td>Fecha Ida<input name="f_ida" type="date"></td>
  29.                         <td>Fecha Vuelta<input name="f_vuelta" type="date"></td>
  30.                         <td><br></td>
  31.                     </tr>
  32.                     <tr>
  33.                         <td>Adultos
  34.                             <select name="n_adultos">
  35.                                 <option selected="selected" value="1">1</option>
  36.                                 <option value="2">2</option>
  37.                                 <option value="3">3</option>
  38.                                 <option value="4">4</option>
  39.                                 <option value="5">5</option>
  40.                                 <option value="6">6</option>
  41.                                 <option value="7">7</option>
  42.                                 <option value="8">8</option>
  43.                             </select>
  44.                         </td>
  45.                         <td>Niños
  46.                             <select name="n_niños">
  47.                                 <option selected="selected" value="0">0</option>
  48.                                 <option value="1">1</option>
  49.                                 <option value="2">2</option>
  50.                                 <option value="3">3</option>
  51.                                 <option value="4">4</option>
  52.                                 <option value="5">5</option>
  53.                                 <option value="6">6</option>
  54.                                 <option value="7">7</option>
  55.                                 <option value="8">8</option>
  56.                             </select>
  57.                         </td>
  58.                         <td>Bebes
  59.                             <select name="n_bebes">
  60.                                 <option selected="selected" value="0">0</option>
  61.                                 <option value="1">1</option>
  62.                                 <option value="2">2</option>
  63.                                 <option value="3">3</option>
  64.                                 <option value="4">4</option>
  65.                                 <option value="5">5</option>
  66.                                 <option value="6">6</option>
  67.                                 <option value="7">7</option>
  68.                                 <option value="8">8</option>
  69.                             </select>
  70.                         </td>
  71.                     </tr>
  72.                 </tbody>
  73.             </table>
  74.             <form action="ServletOrigen" name="">
  75.                 <button>Siguiente</button>
  76.             </form>
  77.             <%!ConexionBBDD ConexBD;%>
  78.             <%!public void jspInit(){
  79.                try{
  80.                    ConexBD=ConexionBBDD.GetConexion();
  81.                }catch(SQLException e){
  82.                    
  83.                }catch(ClassNotFoundException ce){
  84.                    
  85.                }
  86.            }
  87.            %>
  88.             <%!public void jspDestroy(){
  89.                try{
  90.                    ConexBD.Destroy();
  91.                }catch(SQLException e){
  92.                    
  93.                }
  94.            }
  95.            %>
  96.         </div>
  97.     </body>
  98. </html>

Los datos los quiero cargar en el select de name="origen". Para ello estoy usando la funcion cargarDatos() que se encuentra en el siguiente fichero javascript

Código Javascript:
Ver original
  1. var objAjax;
  2. function AJAXCrearObjeto(){
  3.     if(window.XMLHttpRequest){
  4.         objetoAjax=new XMLHttpRequest();
  5.     }
  6.     else{
  7.         objetoAjax=new ActiveXObject("Microsoft.XMLHTTP");
  8.     }
  9.     return objetoAjax;
  10. }
  11.  
  12. function cargarDatos(){
  13.     objAjax=new AJAXCrearObjeto();
  14.     objAjax.open('POST','http://localhost:8084/LineasAereas/ServletOrigen',true);
  15.     objAjax.send();
  16.     objAjax.onreadystatechange=respuestaCarga;
  17. }
  18.  
  19. function respuestaCarga(){
  20.     if(objAjax.readyState==4 && objAjax.status==200){
  21.         alert("responseText:"+objAjax.responseText);
  22.         var miArray=objAjax.responseText;
  23.         mostrarDatos(miArray);
  24.     }
  25. }
  26.  
  27. function mostrarDatos(miArray){
  28.     var array_datos=JSON.parse(miArray);
  29.     var origen=document.getElementById("opt_origen");
  30.     for(var i in array_datos){
  31.         origen.innerHTML=array_datos[i].NOMBRE;
  32.     }
  33. }

Desde la funcion que he dicho antes llamo al servlet:

Código Java:
Ver original
  1. public class ServletOrigen extends HttpServlet {
  2.  
  3.     /**
  4.      * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
  5.      * methods.
  6.      *
  7.      * @param request servlet request
  8.      * @param response servlet response
  9.      * @throws ServletException if a servlet-specific error occurs
  10.      * @throws IOException if an I/O error occurs
  11.      */
  12.    
  13.     private Connection conexion;
  14.    
  15.     @Override
  16.     public void init()throws ServletException{
  17.        
  18.         try{
  19.             ConexionBBDD conexBD=ConexionBBDD.GetConexion();
  20.             conexion=conexBD.GetCon();
  21.         }catch(SQLException e){
  22.            
  23.         }catch(ClassNotFoundException c){
  24.            
  25.         }
  26.     }
  27.    
  28.     protected void processRequest(HttpServletRequest request, HttpServletResponse response)
  29.             throws ServletException, IOException {
  30.         response.setContentType("text/html;charset=UTF-8");
  31.         PrintWriter out = response.getWriter();
  32.         try{
  33.             ArrayList listaAeropuertos=new ArrayList();
  34.             listaAeropuertos=new Aeropuertos().getAeropuertos();
  35.             HttpSession session=request.getSession(true);
  36.             session.setAttribute("listaAeropuertos", listaAeropuertos);
  37.             response.sendRedirect("index.jsp");
  38.            
  39.             out.println("<!DOCTYPE html>");
  40.             out.println("<html>");
  41.             out.println("<head>");
  42.             out.println("<title>Servlet ServletOrigen</title>");            
  43.             out.println("</head>");
  44.             out.println("<body>");
  45.             out.println("<h1>Lista de aeropuertos " + listaAeropuertos.get(0) + "</h1>");
  46.             out.println("</body>");
  47.             out.println("</html>");
  48.         }finally{
  49.             out.close();
  50.         }
  51.     }

El caso es que el select no me carga ningun dato y no se porque puede ser. La verdad es que estoy bastante perdido en esto y necesito ayuda. Gracias

Se que este tema puede que no vaya aqui pero es que no me dejaba subirlo a otro sitio

Etiquetas: ajax, funcion, html, input, js, jsp, select
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:34.