entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

Cargar contenido con JQUERY y JSP

Buenas tardes compañeros, estoy intentando realizar un carga de contenido en un div con jsp a través de una función jquery, no se cual es el problema, simplemente no carga el contenido y no se donde puede fallar o si el código es el correcto:

<html>
    <head>
        <link rel="stylesheet" type="text/css" href="css/estilos.css" />
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script type="text/javascript" src="js/JQUERY.js"></script>
        <title>SISTEMASFS</title>
        <%
            ConsultasMenu CM = new ConsultasMenu();
            ResultSet rs, rs2;
        %>
        <script type="text/javascript">  
             $(document).ready(function(){
                $("#compras").click(function(){
                  var contenido = $("#contenido").val();
                  $.ajax({ //Comunicación jQuery hacia JSP
                    type: "POST",
                    url: "ComprasRealizadas.jsp",
                    data: "contenido="+contenido,
                    success: function(data){
                        ('#contenido').html(data);
                    }
                 });                                            
              });
           });
        </script> 
    </head>
    <body>
        <header id="nav">
            <%
                rs = CM.Logotipo();
                while (rs.next()){
                    %>
                        <img src="<%=rs.getString("rutaImagen")%>" id="logo" />
                    <%
                }
            %>
        </header>
        <nav>
            <menu>
                <%
                    rs = CM.MenuPrincipal();
                    while (rs.next()) {
                        String RPrincipal = rs.getString("rutaArchivo");
                        String TPrincipal = rs.getString("title");
                        String IdPrincipal = rs.getString("id");
                        String NPrincipal = rs.getString("nombre");
                        if (!NPrincipal.equals("Tienda")){
                        %>
                        <li><a href="<%=RPrincipal%>" id="aboutme" style="cursor:pointer;" title="<%=TPrincipal%>"><%=NPrincipal%></a></li>
                        <%
                        } else {
                            %>
                            <li><a href="<%=RPrincipal%>" id="aboutme" style="cursor:pointer;" title="<%=TPrincipal%>"><%=NPrincipal%></a>
                                <ul class="ulmenu">
                                <%
                                    rs2 = CM.SubMenu();
                                    while (rs2.next()){
                                        String ruta = rs2.getString("rutaArchivo");
                                        String title = rs2.getString("title");
                                        String id = rs2.getString("id");
                                        String nombre = rs2.getString("nombre");
                                        %>
                                        <li><a href="<%=ruta%>" id="llaveros" style="cursor:pointer;" title="<%=title%>"><%=nombre%></a></li>
                                        <%
                                    }
                                %>
                                </ul>
                            </li>
                            <%
                        }
                    }
                    %>
            </menu>
            <a href="CarritoCompra.jsp" title="ver carrito de compras"><img id="logoCarrito" src="imagenes/carrito.png" alt="carritocompra"/></a>
        </nav>
        <div>
            <a href="#" id="perfil"><input name="Perfil" type="button" value="PERFIL" /></a>
            <a href="#" id="compras"><input name="Compras Realizas" type="button" value="COMPRAS REALIZADAS" /></a>
            <table border="0">
                <tr>
                    <td>
                        <span>
                            <%
                                if(request.getParameter("error") != null){
                                    out.print(request.getParameter("error"));
                                }else{
                                    out.print("");
                                }
                            %>
                        </span>
                    </td>
                </tr>
            </table>
            <%
                for (int i = 0; i<Validacion.acceso.size(); i++){
                    %>
                    <span>Nombre usuario: <%=Validacion.acceso.get(i).getUsuario()%> </span><br />
                    <span>Clave del usuario: <%=Validacion.acceso.get(i).getClave()%></span>
                    <%
                }
            %>
            <br /><br />
            <p id="linea"></p>
            <span>Aqui debería ir la información relativa a los datos del usuario logueado y sus compras realizadas</span>            
            <br/><br/>
            <div id="contenido">
            </div>
            <a href="CerrarSesion">Cerrar Sesion</a>
        </div>
    </body>
</html>

En la página que hay en la carga jquery solo hay esto:

<[email protected] contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <h1>Hello World!</h1>
    </body>
</html>

¿Que se os ocurre?

carlossevi comentado Mar 10, 2016

Intenta hacer algunas comprobaciones para centrar el tiro:

¿Se ve algo en la consola de Javascript del navegador?
¿Se llega a hacer la petición POST? Puedes verlo en el navegador (opción de desarrollador), haciendo que se registre la llamada en el servidor o incluso revisando los logs.
¿El servidor devuelve datos a la llamada POST a ComprasRealizadas.jsp?

Yesod comentado Mar 10, 2016

Me pone lo siguiente:
ReferenceError: $ is not defined
<anónimo>
JQUERY.js:17
JQUERY.js:17:1
ReferenceError: $ is not defined
<anónimo>
menu.jsp:20
menu.jsp:20:14

Es justamente la primera línea del código...donde viene $(document).ready(function()

1 Respuesta

1voto

carlossevi Puntos58820

Haciendo una pequeña búsqueda puedes encontrar que es un problema con el uso y referencia de jQuery.

Lo más probable es que la biblioteca no esté correctamente referenciada. En el código que nos has copiado la única referencia a un archivo JS externo que podemos ver es al archivo js/JQUERY.js, pero no podemos acceder el contenido ¿qué es?. En caso de que tras esa llamada esté la biblioteca, hay que pensar en otros errores. El siguiente más probable es que la biblioteca referenciada tenga sobre escrita la variable $ y jQuery se use con otro nombre.

Revisa el contenido de js/JQUERY.js y asegurate de que la biblioteca funciona.

Yesod comentado Mar 10, 2016

Efectivamente, ese era el problema, se me había olvidado cargar la librería (la ruta no estaba bien puesta) un fallo tonto xDDD

Gracias :)

Por favor, accede o regístrate para responder a esta pregunta.

¿Conoces alguien que puede responder?
¡Comparte esta pregunta!


Actividad Reciente

¿Eres Usuario Apple?

...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta