2009-06-04 2 views
1

Я пытаюсь использовать плагин calendar_date_select в моем приложении для рельсов и 80% от того, что там есть. У меня это в одном из моих взглядов:Rails datepicker help

<%= calendar_date_select_tag "calendar", "", 
    :embedded => true, 
    :year_range => 10.years.ago..0.years.ago %> 

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

$F('calendar') 
$F(this) 

, но не повезло. Любая помощь будет оценена, спасибо.

+0

ли это представляется через форму на геймпад вы пытаетесь использовать JavaScript? –

+0

Я пытался использовать JavaScript, но я хочу попробовать другой подход. – PezHead

ответ

1

Чтобы получить доступ к <input> объект, созданный calendar_date_select, вы бы использовать

$('calendar') 

, если вы используете Prototype Javascript рамочный (по умолчанию в Ruby On Rails) или

$('#calendar') 

если вы используете фреймворк javascript JQuery (если у вас установлен плагин JRails/gem).

Библиотеки имеют несколько разные способы доступа к значению этого ввода, поэтому ознакомьтесь с документацией для той, которую вы используете.

Cheers!

0

Тот, который я подал в суд, называется CalendarHelper, который возвращает хелпер, называемый календарем, который принимает блок. Блок называется на каждый день, и вы уступаете массив с двумя значениями [текст ячейки (Ussually день номер), класс и стиль CSS опции]

<%= calendar(:year=>year,:month=>month,:abbrev=>(0..1)) do |d| 
    cell_text = link_to_remote(d.mday,:update=>"panel",:url=>{:controller=>'portal',:action=>'agenda',:fecha=>d.to_time})+'<br />' 
    cell_attrs = nil 
    [cell_text, cell_attrs] 
end 
%> 

Я поставил link_to_remote AJAX вызова в тексте в календаре, поэтому сам номер является вызывающим действием.

Но вы можете поместить яваскрипт задание, которое задает любые переменный любую форму к значению вы хотите, как

...link stuff..."onClick='my_form.my_date.value=#{d.to_time};'"...