Я использовал классы пользовательского интерфейса jQuery, чтобы стилизовать вещи «последовательно», когда JavaScript отключен. Вы просто используете классы, которые пользовательский интерфейс jQuery применяет к элементам, и включаете таблицу стилей и ресурсы пользовательского интерфейса jQuery.
Например, если у вас было
<a href="#" id="abutton">This is a button</a>
И вы запустили jQuery UI JavaScript:
$("#abutton").button();
Это изменило бы разметку на:
<a href="#" id="abutton" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" role="button">
<span class="ui-button-text">This is a button</span>
</a>
Предоставление вам приятной кнопки jQuery UI. Но только после запуска JavaScript это будет применено. Если у пользователя нет / не разрешен JavaScript, вы получите некрасивую ссылку. Вместо этого вы должны использовать классы пользовательского интерфейса jQuery в начале:
<a href="#" id="abutton" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only">This is a button</a>
Он будет иметь базовый стиль jQuery UI до запуска JavaScript (хотя структура иная - диапазона нет, и если у вас изначально был диапазон, он все равно добавляет еще один, что, по-моему, ошибка). Дело в том, что вы хотите, чтобы JavaScript работал без сбоев, потому что он добавляет другие вещи, такие как эффекты наведения мыши (и упомянутый ранее диапазон), так что пользователи, которые имеют JavaScript, получают полный опыт, но вы также хотите использовать jQuery UI классы по умолчанию, потому что вам нужна согласованная тема (даже если она не идеальна на 100%).
Чтобы узнать больше об их CSS-фреймворке, посмотрите http://jqueryui.com/docs/Theming/API.
Если вы хотите, чтобы он НЕ использовал JavaScript, вам понадобится:
- Начальная страница, делает пост обратно
- Сервер решает, что нужно сделать всплывающее окно, отображает представление с помощью диалогового окна, содержащего все соответствующие наборы диалоговых классов.
- Пользователь нажимает кнопку во всплывающем окне, выполняя еще одну запись назад.
- Сервер отображает представление без всплывающего окна.
Это ужасно, но вы не можете делать динамический HTML без сценариев, верно ...