Я пытаюсь заполнить массив Javascript внутри javascript-функций, используя JSTL. Моя цель состоит в том, чтобы сделать функцию завершения работы JQuery автоматически с моим веб-приложением, которое разработано с использованием Servlets
и jsp
. Оригинальная ссылка на авто JQuery completionis здесь - https://jqueryui.com/autocomplete/JQuery auto complete with JSP
Ниже мой код
index.jsp
<%@taglib prefix="c" uri= "http://java.sun.com/jsp/jstl/core" %>
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>JQuery UI Autocomplete - Default functionality</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css">
<script>
$(function() {
var availableTags=[] ;
<c:forEach var="list" items="${requestScope['list']}">
availableTags.push('${list.drug_name}');
</c:forEach>
$("#tags").autocomplete({
source: availableTags
});
});
</script>
</head>
<body>
<form action="Combo">
<div class="ui-widget">
<label for="tags">Tags: </label>
<input name="selectBox" id="tags">
<input type="submit"/>
</div>
</form>
</body>
</html>
Я звоню index.jsp из сервлета, как показано ниже.
List<Names> list=names.readNames(file);
request.setAttribute("list", list);
RequestDispatcher dispatcher=request.getRequestDispatcher("WEB-INF/jsp/Index.jsp");
dispatcher.forward(request, response);
Здесь List<Names> list=names.readNames(file);
возвращает боб Names
. Names
- это просто класс с сеттерами и getters fer одной переменной name
, которая является типом String.
Однако я не смог этого добиться, потому что автозаполнение не работает таким образом. Скорее всего, из-за ошибки в вводе данных в массив. что здесь случилось?
Откройте инструменты для разработчиков (F12) и войдите в консоль. Есть ли там ошибки? – alkis
@alkis: Большое спасибо, возникла проблема «неперехваченного исключения: неожиданные строки». Я починил это. Просьба представить ваш комментарий в качестве ответа. –
я сделал. спасибо – alkis