【问题标题】:Rails 3 Asset Pipeline: JQuery Datepicker is working, but Timepicker will not work at allRails 3 资产管道:JQuery Datepicker 正在工作,但 Timepicker 根本不起作用
【发布时间】:2012-12-04 16:53:00
【问题描述】:

对于我尝试集成的任何时间选择器,javascript 控制台都会给我这个错误,虽然它对 datepicker 工作正常。日期时间选择器也不起作用。

Uncaught TypeError: Object [object Object] has no method 'timePicker' 

我尝试了许多不同的 timepicker 库,但它们都不起作用。

这是我的 application.js 文件:

//= require jquery
//= require jquery_ujs
//= require jquery.ui.all
//= require twitter/bootstrap
//= require bootstrap-datepicker
//= require bootstrap-timepicker
//= require jquery.timePicker
//= require jquery.timePicker.min
//= require schools

我的 application.css 文件:

*= require_self
*= require jquery.ui.all
*= require bootstrap_and_overrides
*= require formtastic-bootstrap
*= require formtastic_changes
*= require bootstrap-datepicker
*= require bootstrap-timepicker
*= require gmaps4rails
*= require schools
*= require timePicker

我的宝石文件:

gem 'rails', '3.2.8'

group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'
  gem 'therubyracer', '~> 0.10.2'
  gem 'uglifier', '>= 1.0.3'
  gem 'jquery-rails'
  gem 'jquery-ui-rails'
  gem "twitter-bootstrap-rails"
end

gem 'sextant'
gem 'passenger'
gem 'formtastic', " ~> 2.1.1"
gem 'formtastic-bootstrap'
gem 'country_select'
gem 'slim'
gem 'redcarpet'
gem "auto_html"
gem 'gmaps4rails'
gem 'friendly_id'
gem 'devise'

gem 'capistrano'
gem 'unicorn'

gem 'bootstrap-datepicker-rails'
gem "bootstrap-timepicker-rails"

gem 'bcrypt-ruby', '~> 3.0.0'

group :development do
  gem 'sqlite3'
end

group :production do
  gem 'pg'
end

我的学校.js 文件('datepicker' 突出显示为粉红色,'timePicker' 突出显示为棕色。如果我将 'timePicker' 更改为 'datepicker' 以外的任何内容,它会保持棕色):

$(document).ready( function(){
  $('#date_picker').datepicker();
  $('.time_picker').timePicker();
});

我的看法:

<% if current_user %>
  <h3>Create Reminder</h3>
  <%= form_tag create_user_reminder_path, method: 'post' do %>
    <%= select_datetime Time.now, :prompt => :date  %>
    <%= text_field_tag :date, nil, :id => "date_picker" %>
    <div class="input-append bootstrap-timepicker-component">
      <%= text_field_tag :time, nil, :class => "time_picker input-small" %>
      <span class="add-on">
          <i class="icon-time"></i>
      </span>
    </div>
    <%= text_area_tag :message %>
    <% if @school %>
      <% unless @school.id == current_user.school_id %>
        <%= hidden_field_tag :school_id, @school.id %>
      <% end %>
    <% end %>
    <%= submit_tag 'Save Reminder' %>
  <% end %>
<% end %>

【问题讨论】:

  • 如果您在application.jsGemfile 中删除所有对时间选择器(jquery 和引导程序)的引用,只需在您的application.js 中保留//= require jquery.timePicker,然后执行bundle update 即可工作?看起来有些东西被覆盖了..
  • 确保你也删除了//= require jquery.timePicker.min

标签: jquery ruby-on-rails-3 jquery-ui twitter-bootstrap timepicker


【解决方案1】:

不是$('.time_picker').timepicker(); 而是$('.time_picker').timePicker(); 吗?

(注意时间选择器中的小“p”)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-14
    • 1970-01-01
    • 2023-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-09
    相关资源
    最近更新 更多