Javascript jQueryUIDatePicker仅在第二次聚焦文本框之后出现

Javascript jQueryUIDatePicker仅在第二次聚焦文本框之后出现,javascript,ruby-on-rails-3,jquery-ui,coffeescript,jquery-ui-datepicker,Javascript,Ruby On Rails 3,Jquery Ui,Coffeescript,Jquery Ui Datepicker,出于某种原因,当我加载部分并单击文本框以打开日期选择器时,我必须在文本框外单击,然后在日期选择器出现之前单击文本框中的“上一步”。是否有人看到任何错误或如何修复它,以便在第一次单击文本框时显示日期选择器?我正在使用ruby 1.9.3和rails 3.2.8 users.js.coffeescript $("form[data-update-target]").live "ajax:success", (evt, data) -> target = $(this).data("upda

出于某种原因,当我加载部分并单击文本框以打开日期选择器时,我必须在文本框外单击,然后在日期选择器出现之前单击文本框中的“上一步”。是否有人看到任何错误或如何修复它,以便在第一次单击文本框时显示日期选择器?我正在使用ruby 1.9.3和rails 3.2.8

users.js.coffeescript

$("form[data-update-target]").live "ajax:success", (evt, data) ->
  target = $(this).data("update-target")
  $("#" + target).html data

$("#update-container").on 'click', '#event_start_at_date', (evt) ->
  $("#event_start_at_date").datepicker({ dateFormat: "yy-mm-dd" })

$("#update-container").on 'click', '#event_end_at_date', (evt) ->
  $("#event_end_at_date").datepicker({ dateFormat: "yy-mm-dd" })
_文本框所在的部分事件

<%= form_for(@event) do |f| %>
  <div class="field">
  <%= f.label 'start date' %>*
  <%= f.text_field :start_at_date, :class => 'start_at_date', :size => 10, :maxlength => 10 %> 
  <%= f.text_field :start_at_time, :size => 5, :maxlength => 5 %>
</div>
<div class="field">
  <%= f.label 'end_date' %>*
  <%= f.text_field :end_at_date, :class => 'end_at_date', :size => 10, :maxlength => 10 %> 
  <%= f.text_field :end_at_time, :size => 5, :maxlength => 5 %>
</div>
<% end %>

*
'开始日期',:size=>10,:maxlength=>10%>
5,:maxlength=>5%>
*
'在日期结束',:size=>10,:maxlength=>10%>
5,:maxlength=>5%>
用户的新页面new.html.erb

<%= form_tag({:controller => 'users', :action => 'preview'}, :remote => true, :'data-update-target' => 'update-container') do %>
  <%= radio_button_tag(:page_type, 'event', false, :class => 'submit') %>
  <%= label_tag(:page_type, "Event") %>
  <br/>
<% end %>
<div id="update-container">
</div>
'users',:action=>'preview'},:remote=>true,:'data-update-target'=>'updatecontainer')do%>
“提交”)%%>

呼叫

$("#event_start_at_date").datepicker({ dateFormat: "yy-mm-dd" })
不打开日期选择器,它只是将日期选择器绑定到该元素,这意味着它将对单击做出反应并打开日期选择器


加载DOM时,应该将日期选择器绑定到元素,而不是在单击处理程序中。

谢谢,所以我应该将其放在document.ready部分?还有,我如何让它在单击时调用日期选择器呢?