Как сменить раскрывающееся положение управления jQuery DatePicker

DAO и шаблон репозитория являются способами реализации уровня доступа к данным (DAL). Итак, сначала начнем с DAL.

Объектно-ориентированные приложения, которые обращаются к базе данных, должны иметь некоторую логику для обработки доступа к базе данных. Чтобы сохранить код чистым и модульным, рекомендуется, чтобы логика доступа к базе данных была изолирована в отдельный модуль. В многоуровневой архитектуре этот модуль является DAL.

До сих пор мы не говорили о какой-либо конкретной реализации: только общий принцип, который помещает логику доступа к базе данных в отдельный модуль.

Теперь, как мы можем реализовать этот принцип? Хорошо, один из известных способов реализации этого, в частности с помощью таких сред, как Hibernate, - это шаблон DAO.

Шаблон DAO - это способ генерации DAL, где обычно каждый объект домена имеет свой собственный DAO. Например, User и UserDao, Appointment и AppointmentDao и т. Д. Пример DAO с Hibernate: http://gochev.blogspot.ca/2009/08/hibernate-generic-dao .html .

Тогда что такое репозиторий? Как и DAO, шаблон репозитория также является способом достижения DAL. Основной момент в шаблоне репозитория заключается в том, что с точки зрения клиента / пользователя он должен выглядеть или вести себя как коллекция. Под поведением «коллекции» подразумевается не то, что ее нужно создавать как Collection collection = new SomeCollection(). Вместо этого это означает, что он должен поддерживать такие операции, как добавление, удаление, содержание и т. Д. Это суть шаблона репозитория.

На практике, например, в случае использования Hibernate, шаблон репозитория реализуется с помощью DAO. То есть экземпляр DAL может быть одновременно экземпляром шаблона DAO и шаблоном репозитория.

Шаблон репозитория не обязательно является чем-то, что строится поверх DAO (как некоторые могут предположить). Если DAO спроектированы с интерфейсом, который поддерживает вышеупомянутые операции, то это экземпляр шаблона репозитория. Подумайте об этом: если DAO уже предоставляют набор операций, подобный коллекции, тогда зачем нужен дополнительный слой поверх него?

103
задан Athafoud 15 July 2014 в 12:32
поделиться

3 ответа

Принятый ответ на этот вопрос на самом деле не для jQuery UI Datepicker. Чтобы изменить положение jQuery UI Datepicker, просто измените .ui-datepicker в файле css. Таким же образом можно изменить размер Datepicker, просто отрегулируйте размер шрифта.

22
ответ дан 24 November 2019 в 04:15
поделиться

Вот что я использую:

$('input.date').datepicker({
    beforeShow: function(input, inst)
    {
        inst.dpDiv.css({marginTop: -input.offsetHeight + 'px', marginLeft: input.offsetWidth + 'px'});
    }
});

Вы также можете добавить немного больше к левому полю, чтобы оно не соприкасалось с полем ввода.

117
ответ дан 24 November 2019 в 04:15
поделиться

Я делаю это прямо в CSS:

.ui-datepicker { 
  margin-left: 100px;
  z-index: 1000;
}

Все мои поля ввода даты имеют ширину 100 пикселей. Я также добавил z-index, чтобы календарь также отображался над всплывающими окнами AJAX.

Я не изменяю файл CSS jquery-ui; Я перегружаю класс в моем основном файле CSS, поэтому я могу изменить тему или обновить виджет без повторного ввода моих конкретных модов.

40
ответ дан 24 November 2019 в 04:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: