Как решить автозаполнение jquery не показывает никаких данных? - PullRequest
0 голосов
/ 06 апреля 2019

с тех пор, как несколько дней у меня возникает проблема, что при вызове функции автозаполнения jquery ничего не показывает, и я уже рассмотрел вопросы, которые уже были сформулированы другими, но я все еще не понимаю, в чем проблема, я думаю, потому что я не очень ясно, Javascript. Заранее благодарю, кто может мне помочь!

Функция работает, на самом деле я попытался выполнить ее с помощью отладчика, и, очевидно, она работает. На мой взгляд, страница JSP, у меня есть этот код:

<script language="javascript" type="text/javascript">
    $(function () {
        $("#cuenta").autocomplete({
            source: function (request, response) {
                alert("pepe");
                $.ajax({
                    type: "POST",
                    url: "CuentaBusca",
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    minLength: 2,
                    delay: 100,
                    success: function (data) {
                        console.log( data);
                        response(data);
                    },
                    select: function (event, ui) {
                        return false;
                    }
                });
            }
        });
    });
</script>

console.log показывает мне следующий результат:

А в сервлете у меня есть следующий код, который также работает:

protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
 PrintWriter out = response.getWriter();


DBConexion conex = null;
try {
    conex = new DBConexion();
} catch (SQLException ex) {
    throw new ServletException("Sucedio un Error al Realizar la Conexion a la Base de Datos !", ex);
}

Connection conn = conex.getConexion();

try {

    PreparedStatement ps = conn.prepareStatement("select id,nombre from cuentas order by nombre");
    ResultSet rs = ps.executeQuery();

    JsonObject json_response = new JsonObject();
    JsonArray data_json = new JsonArray();

    while (rs.next()) {
        JsonObject json = new JsonObject();

        json.addProperty("id", rs.getInt("id"));
        json.addProperty("nombre", rs.getString("nombre"));
        data_json.add(json);
    }
    json_response.add("aaData", data_json);

    response.setContentType("application/Json");
    response.getWriter().write(json_response.toString());

} catch (SQLException ex) {
    throw new ServletException("Sucedio un Error al Realizar la Conexion a la Base de Datos !", ex);

}

// Cierra la Conexion 
try {
    conex.closeConexion();
} catch (SQLException ex) {
    throw new ServletException("Sucedio un Error al Cerrar la Conexion en la Base de Datos !", ex);
}

}

Я подозреваю, что возвращаюсь в неподходящем формате из сервлета, но не нашел более четкого объяснения. Есть идеи?

Привет, Fernando

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...