2013-09-29 3 views
0

Я пытаюсь использовать тот же самый Datepicker Railadmin, используя поля «Дата» в своем настраиваемом действии.Использовать datepicker в railsadmin custom action

У меня есть поле даты в моей настраиваемого действия

<input type="text" class="hasDatepicker"> 

Я могу видеть rails_admin с помощью Jquery Ui Datepicker.

Started GET "/assets/jquery.ui.datepicker.js?body=1" for 127.0.0.1 at 2013-09-29 19:58:34 +0530 

Я также понял, что они расширяют прототип прототипа данных.

$.extend(Datepicker.prototype, { 
/* Class name added to elements to indicate already configured with a date picker. */ 
markerClassName: "hasDatepicker" ... 

Любая помощь для получения выбора даты для работы в rails admin custom action (view) будет оценена по достоинству.

+0

Попытка добавления 'datepicker' класс в поле ввода. т.е. '' – vee

+0

@vinodadhikary: no Luck, Senthil

+0

@Senthill , извините скопируйте ошибку патча. Попробуйте: '' – vee

ответ

0

Наконец решил ее путем включения внешнего модуля. Я добавил библиотеку JS в пользовательский вид.

<%=javascript_include_tag "/assets/rails_admin/lib/bootstrap-datepicker.js"%> 
<%=stylesheet_link_tag "/assets/rails_admin/lib/datepicker.css"%> 



function pick_date(){ 
     var nowTemp = new Date(); 
     var now = new Date(nowTemp.getFullYear(), nowTemp.getMonth(), nowTemp.getDate(), 0, 0, 0, 0); 
     var a=$('.hasDatepicker').datepicker({ 
       onRender: function(date) { 
        return date.valueOf() < now.valueOf() ? 'disabled' : ''; 
       }, 
       format: 'dd-mm-yyyy' 
       }); 
    } 
-1

Чтобы следить за моими комментариями выше, вот как я использую jquery.ui.datepicker, который работал без проблем (обратите внимание, что следующий код является примером):

приложение/просмотров/шаблоны /model_action.html.erb

<%= f.text_field :date_of_birth, id: 'user_date_of_birth', class: 'datepicker' %> 

приложение/активы/JavaScripts/datepicker.js.coffee

$ -> 
    $('.datepicker').datepicker 

И фрагмент из исходного кода страницы:

<link href="/assets/jquery.ui.datepicker.css?body=1" media="all" rel="stylesheet" type="text/css" /> 
<script src="/assets/jquery.ui.datepicker.js?body=1" type="text/javascript"></script> 
... 
<input class="datepicker" id="user_date_of_birth" name="user[date_of_birth]" type="text" /> 
+0

Не работает Vinod, я использую рельсы 4. Я уверен, что файлы js загружаются. Senthil

0

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

:javascript 
    jQuery(function($) { 
    $.filters.options.regional = { 
    datePicker: { 
    dateFormat: "mm/dd/yy", 
    dayNames: ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"], 
    dayNamesShort: ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"], 
    dayNamesMin: ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"], 
    firstDay: "1", 
    monthNames: ["January","February","March","April","May","June","July","August","September","October","November","December"], 
    monthNamesShort: ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"] 
    } 
    } 

    }); 

:javascript 
    $(function() { 
    $('.date').datepicker($.filters.options.regional); 
    }); 

%form.pjax-form.form-inline{"accept-charset" => "UTF-8", :method => "get"} 
    %div{:style => "display:none"} 
    %input{:name => "utf8", :type => "hidden", :value => "✓"}/ 
    .well 
    %span#filters_box 
     %p.filter.form-search 
     %span.label.label-info.form-label 
      Created at 
     %select.switch-additionnal-fieldsets.input-small{:name => "created_at"} 
      %option{"data-additional-fieldset" => "default", :value => "default"} Date ... 
      %option{"data-additional-fieldset" => "between", :value => "between"} Between ... and ... 
      %option{:value => "today"} Today 
      %option{:value => "yesterday"} Yesterday 
      %option{:value => "this_week"} This week 
      %option{:value => "last_week"} Last week 
      %option{:disabled => "disabled"} --------- 
      %option{:value => "_not_null"} Is present 
      %option{:value => "_null"} Is blank 
     %input.date.additional-fieldset.default.input-small{:name => "created_at", :style => "display:inline-block;", :type => "text", :value => ""}/ 
     %input.date.additional-fieldset.between.input-small{:name => "start_date", :placeholder => "-∞", :style => "display:none;", :type => "text", :value => ""}/ 
     %input.date.additional-fieldset.between.input-small{:name => "end_date", :placeholder => "∞", :style => "display:none;", :type => "text", :value => ""}/ 
     %button.btn.btn-primary{"data-disable-with" => "<i class='icon-white icon-refresh'></i> Refresh", :type => "submit"} 
      %i.icon-white.icon-refresh 
      Refresh 

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

0

Добавить класс datepicker в поле ввода. т.е.

<input type="text" class="datepicker"> 

и использование:

$('.datepicker').datepicker();