2013-02-21 7 views
0

Я пытался написать веб-сайт, на котором вся навигация обрабатывается путем скрытия и отображения div. Я понимаю, что этот метод называется Single Page Interface. Это работало для простых проектов в прошлом, но моя текущая задача начинает очень хлопотно использовать этот метод. Как я могу повторить одно и то же поведение, но вместо того, чтобы скрывать и показывать divs, я могу просто иметь основной контейнер div, который затем заполняется желаемым html с сервера?JSP-страница с динамическим html

Пример:

<script> 
    $("#button").onclick(function() { 
     $("#a").show(); 
     $("#b").hide(); 
    }); 
</script> 

<html> 
    <body> 
     <div id="a" style="display:none;">A: SOME HTML</div> 
     <div id="b" style="display:block;">B: SOME HTML</div> 
     <button id="button">Change to A</button> 
    </body> 
</html> 

(обратите внимание, что это очень грубый пример белым я пытаюсь сделать)

Но я хотел бы, чтобы содержимый контейнер DIV, чтобы изменить с «B» на «А» через некоторые jsp

Может ли кто-нибудь указать в правильном направлении?

Далее Пояснение:

Может быть, я могу уточнить немного лучше. Поэтому, когда пользователь загружает страницу, ему предоставляется раздел, в котором есть таблица всех существующих файлов в базе данных. Пользователь может выбрать файл из списка БД для переименования или копирования. Например, если пользователь хочет переименовать файл, ему будет представлен новый дисплей (все в пределах одной и той же вкладки), который будет иметь набор полей, заполненных для выбранного ими файла, и набор пустых полей в котором они могут указать новое имя файла. В настоящее время эта смена дисплеев обрабатывается показом и скрытием div, но я хотел бы получить html, который я хочу отобразить с сервера и представить его. В основном имитирует скрытие и показ divs.

+0

, чтобы понять это лучше - и означают закладки элементов - например: http://jqueryui.com/tabs/ – user1428716

+0

Ну, интерфейс, который я пытаюсь разработать, включает в себя элементы с вкладками , Но внутри каждой вкладки можно выполнить различные задачи. Например, на одной вкладке пользователь может загружать, переименовывать или копировать файл. Под другой вкладкой можно редактировать различные настройки и т. Д. Но вкладки не являются проблемой, ее содержимое на каждой вкладке. –

ответ

0

Как это не совсем для меня ясно, что вы пытаетесь сделать, я дам вам несколько вариантов:

  1. заменить содержимое элемента на странице см
  2. Поскольку вы используете JSP, вы можете использовать логику на стороне сервера, чтобы отобразить определенные фрагменты
  3. вы используете JSP, использовать это, чтобы сделать некоторые побочные сервер содержимого

объявления 1:

(при условии, JQuery) $('body').load('serverSide.html'); см http://api.jquery.com/load/

объявления 2:

<% if ("a".equals(request.getParameter("aOrB"))) { %> 
<jsp:include page="/a.jspf"> 
<% } else { %> 
<jsp:include page="/b.jspf"> 
<% } %} 

объявление 3:

<%= request.getAttribute('content') %> 

Надежда, что помогает

+0

Итак, скажите, что у меня есть кусок html, который я хочу отобразить в div, хранящемся на сервере. Могу ли я указать $ ("# targetDiv"). Load ("wish.html"); и есть html из «wish.html», отображаемого в «targetDiv», все отформатированные и еще что-то? –

+0

yep, см. Http://jsbin.com/ayukof/1/edit – Friso

+0

СПАСИБО! Это отлично работает.Это в сочетании с history.pushstate() - именно то, что я искал. –

Смежные вопросы