Datepicker должен быть виден при загрузке

Обсуждаются вопросы по надстройке jQuery UI - официальные виджеты и плагины для организации взаимодействия с элементами интерфейса.

Модераторы: EGORR, Gennady

Re: Цвет даты в Datepicker

Сообщение ViTYAi2007 » 25 янв 2010, 12:49

Nekromancer писал(а):
ViTYAi2007 писал(а):Подскажите, как в Datepicker текущую дату обозначить одним цветом, а выбранную пользователем - другим?


Код: выделить все
.ui-state-highlight, .ui-widget-content .ui-state-highlight
стандартные классы для текущей даты
Код: выделить все
.ui-state-active, .ui-widget-content .ui-state-active
для выбранной даты


А как через java-script обратиться к этим свойствам?
Например:
Код: выделить все
<script type="text/javascript">document.getElementById('datepicker').style.ui-state-active = '#83C948'</script>
ViTYAi2007
 
Сообщений: 20
Зарегистрирован: 21 янв 2010, 09:09

Re: Цвет даты в Datepicker

Сообщение Nekromancer » 25 янв 2010, 12:53

ViTYAi2007 писал(а):А как через java-script обратиться к этим свойствам?
Например:
Код: выделить все
<script type="text/javascript">document.getElementById('datepicker').style.ui-state-active = '#83C948'</script>


нет, это классы элементов, в html обозначается так class="ui-state-highlight"..
через Джиквери можно обратиться так
Код: выделить все
<script type="text/javascript">
$('.ui-state-highlight').css({
color: '#83C948'
});
</script>
Web is the future ...
Аватар пользователя
Nekromancer
Модератор
 
Сообщений: 419
Зарегистрирован: 19 янв 2010, 15:06
Откуда: Молдова

Re: Цвет даты в Datepicker

Сообщение ViTYAi2007 » 25 янв 2010, 14:23

Nekromancer писал(а):
Код: выделить все
<script type="text/javascript">
$('.ui-state-highlight').css({
color: '#83C948'
});
</script>


Попробовал вот так:

Код: выделить все
<script type="text/javascript">$('.ui-state-active').css({background: '#83C948'});</script>

Не получилось...
При нажатии на кнопку, происходит перезагрузка странички и цвет даты в календаре сбрасывается.
ViTYAi2007
 
Сообщений: 20
Зарегистрирован: 21 янв 2010, 09:09

Re: Datepicker должен быть виден при загрузке

Сообщение Nekromancer » 25 янв 2010, 14:44

ну так скрипт должен быть во всех страницах.. проще тогда css файл менять..
Web is the future ...
Аватар пользователя
Nekromancer
Модератор
 
Сообщений: 419
Зарегистрирован: 19 янв 2010, 15:06
Откуда: Молдова

Re: Datepicker должен быть виден при загрузке

Сообщение Gennady » 25 янв 2010, 14:52

Имеется ввиду стилевой файл виджета. Найдите там css-свойства о которых говорил Nekromancer и оформляйте их "под себя".
Долог путь поучения, короток и успешен путь примеров (Сенека).
I'm a member of jQuery Meetups. jQuery users unite! Connect with other jQuery users... Присоединиться к jQuery Russia.
Аватар пользователя
Gennady
Администратор
 
Сообщений: 1886
Зарегистрирован: 14 янв 2010, 14:36
Откуда: Москва

Re: Datepicker должен быть виден при загрузке

Сообщение ViTYAi2007 » 26 янв 2010, 06:34

Gennady писал(а):Имеется ввиду стилевой файл виджета. Найдите там css-свойства о которых говорил Nekromancer и оформляйте их "под себя".


Это я понял. В календаре я выбрал дату, например, 26 января. Она подсветилась цветом - как указано в css-файле.
Но при обновлении страницы подсветка цветом исчезает. То есть при обновлении страницы событие выбора даты сбрасывается.
А как сделать, чтобы оно запоминалось?
ViTYAi2007
 
Сообщений: 20
Зарегистрирован: 21 янв 2010, 09:09

Re: Datepicker должен быть виден при загрузке

Сообщение TRAHOMOTO » 26 янв 2010, 11:12

Я не одобряю подобные костыли, но бывает что без них просто не обойтись.

1. Создайте функцию вида
Код: выделить все
function lightToday(){
...
Тут, код которым вы подсвечиваете "Сегодня"
...
}

2. Выполняйте этот код после загрузке страницы, просто прописав в главную функцию jQuery
Код: выделить все
$(function(){
...
lightToday();
...
});
Предполагается наличие объекта
Аватар пользователя
TRAHOMOTO
Модератор
 
Сообщений: 513
Зарегистрирован: 19 янв 2010, 17:18
Откуда: Украина, Луганск

Re: Datepicker должен быть виден при загрузке

Сообщение EGORR » 26 янв 2010, 11:15

ViTYAi2007 писал(а):
Gennady писал(а):Имеется ввиду стилевой файл виджета. Найдите там css-свойства о которых говорил Nekromancer и оформляйте их "под себя".


Это я понял. В календаре я выбрал дату, например, 26 января. Она подсветилась цветом - как указано в css-файле.
Но при обновлении страницы подсветка цветом исчезает. То есть при обновлении страницы событие выбора даты сбрасывается.
А как сделать, чтобы оно запоминалось?

Клади её в куки и проверяй присутствие. Если кука есть, ну да что объяснять... сам знаешь...
Life is very short, and there's no time
For fussing and fighting, my friend...
Аватар пользователя
EGORR
Модератор
 
Сообщений: 720
Зарегистрирован: 22 янв 2010, 01:44
Откуда: Ярославль

Re: Datepicker должен быть виден при загрузке

Сообщение ViTYAi2007 » 26 янв 2010, 11:32

TRAHOMOTO писал(а):
1. Создайте функцию вида
Код: выделить все
function lightToday(){
...
Тут, код которым вы подсвечиваете "Сегодня"
...
}

2. Выполняйте этот код после загрузке страницы, просто прописав в главную функцию jQuery
Код: выделить все
$(function(){
...
lightToday();
...
});


Я не кодом подсвечиваю выбранную дату, а она автоматом берется из css-файла и выделяется на календаре.
А как запомнить выбранную в календаре дату, так как при обновлении страницы календарь "забывает" какая дата была выбрана?
ViTYAi2007
 
Сообщений: 20
Зарегистрирован: 21 янв 2010, 09:09

Re: Datepicker должен быть виден при загрузке

Сообщение Nekromancer » 26 янв 2010, 11:42

ViTYAi2007 писал(а):
Я не кодом подсвечиваю выбранную дату, а она автоматом берется из css-файла и выделяется на календаре.
А как запомнить выбранную в календаре дату, так как при обновлении страницы календарь "забывает" какая дата была выбрана?



getDate - .datepicker('getDate') метод возвращает дату, выбранную в календаре.

setDate - .datepicker('setDate', date) метод позволяет установить дату в календаре. Значением аргумента date может быть число, определяющее количество дней от текущей даты (например: +7 или -14) или строка, определяющая период ('y' для лет, 'm' для месяцев, 'w' для недель, 'd' для дней, например '+1m +7d'). Значение null установит текущую дату.


Клади её в куки и проверяй присутствие. Если кука есть, ну да что объяснять... сам знаешь...
Web is the future ...
Аватар пользователя
Nekromancer
Модератор
 
Сообщений: 419
Зарегистрирован: 19 янв 2010, 15:06
Откуда: Молдова

Пред.След.

Вернуться в jQuery UI

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1