3

我想将 datepicker 小部件添加到我的选择字段之一。我目前正在使用带有 ruby​​ 1.9.3.p325 的 rails 3.2.13。我还包括了“jquery_datepicker”gem,以及“jquery-rails”和“jquery-ui-rails”

表单代码如下所示。

  <div class="field">
    <%= f.label :datum %><br />
    <%= f.text_field :datum , :id => "datepicker" %>
  </div>

包含的javascript是:

//= require jquery
//= require jquery_ujs
//= require bootstrap
//= require dataTables/jquery.dataTables
//= require select2
//= require_tree .


$ ->
  $("#practice_toolkeeper")
    .select2({
         allowClear: true,
         placeholder: 'Select an item'
    })
    .select2('val',$("#toolkeeper_value").val())    

$ ->
  $("#datepicker").datepicker()

生成 HTML

<div class="field">
  <label for="practice_datum">Datum</label><br />
  <input id="datepicker" name="practice[datum]" size="30" type="text" />
</div>

如果您选择输入字段,则不会发生任何事情

4

2 回答 2

6

代替

$("datepicker").datepicker();

$("#datepicker").datepicker();

在选择器中丢失#。和元素datepicker一样id。您需要#在选择器中使用。

更新

jQuery($)->
 $("#datepicker").datepicker();
 .....

这应该有效。

更新 2

假设您在sample.coffee文件中有以下内容 -

jQuery ->
 $("#datepicker").datepicker();

您需要使用以下命令编译 abouve 文件 -

coffee -c sample.coffee

这将生成js具有以下内容的文件 -

(function() {
  jQuery(function() {
    return $("#datepicker").datepicker();
  });

}).call(this);

如果您对咖啡脚本不太熟悉,请访问http://coffeescript.org/#installation

于 2013-03-31T08:16:48.367 回答
2

您错过了#选择 ID 为 datepicker 的元素。它应该是

$("#datepicker").datepicker()
于 2013-03-31T08:17:16.230 回答