Я новичок в JSP и ajax, но стараюсь одновременно.Как получить JSP-параметр динамически? (или создать параметр JSP)
Я делаю динамическую вкладку, которую можно добавить или удалить с помощью этих шагов.
I wannna помещает параметр из контроллера в область содержимого новой добавленной вкладки.
1. Когда нажата кнопка «Загрузить проект» из списка, добавьте новую вкладку.
$('<li role="presentation">'
+'<a href="#'+tabId+'" aria-controls="'+tabId+'" role="tab" data-toggle="tab">'
+$projectName
+' <span class="closeTab glyphicon glyphicon-remove" aria-hidden="true"></span>'
+'<input class="hiddenProjectId" type="text" name="projectId" value="'+ pId +'" style="display: none;">'
+'</a></li>').insertBefore('#liProjectTabAdd');
$('<div role="tabpanel" class="tab-pane fade" id="'+ tabId + '">'
+ '<div class="projectContent">'
+ '<ul class="blockList list-unstyled draggableList"></ul>'
+ '<div class="table-hover addBlock">'
+ 'add block <span id="addBlockGlyp" class="glyphicon glyphicon-plus" aria-hidden="true"></span>'
+ '</div></div>'
+ '</div>').appendTo('.projectTab-content');
2.call контроллер через AJAX (пост метод)
$.post("loadProjectContent.do",
{
projectId: pId
}
);
3. Вызов контроллера DAO и получить содержание проекта. (содержимое правильно. Я проверил его с печатью)
Project project = new Project();
project.setProjectId(Integer.parseInt(request.getParameter("projectId")));
dao.doGetProjectContent(project);
request.setAttribute("projectContent", project.getProjectContent());
Тогда сейчас, как получить этот projectContent в JSP?
Я попытался добавить ярлык jsp, когда добавляю вкладку, но это был необработанный текст.
(как ~~~ $ {projectContent} ~~~)
$('<div role="tabpanel" class="tab-pane fade" id="'+ tabId + '">'
+ '<div class="projectContent">'
+ '<ul class="blockList list-unstyled draggableList">'
+ '${ projectContent }'
+ '</ul>'
+ '<div class="table-hover addBlock">'
+ 'add block <span id="addBlockGlyp" class="glyphicon glyphicon-plus" aria-hidden="true"></span>'
+ '</div></div>'
+ '</div>').appendTo('.projectTab-content');
Пожалуйста, сохраните это новичку
Извините за подробные запросы. Вы имеете в виду метод ответа, например response.setHeader()? –
Нет, напишите его в тело ответа. Не знаю, каков тип вашего 'projectContent'. Если это не строка, вы, вероятно, захотите сначала ее сериализовать на строку или объект JSON. –