我有一些coffeescript:
http://jsfiddle.net/jdell64/9v646/
利用jquery ui datepicker。在页面加载时,它会获得一系列可用日期(一次一个月)并显示它们。这适用于IE,但不适用于Firefox或Chrome。我必须刷新页面才能使其正常工作。
基本上,
$ ->
full_days = []
partial_days = []
getDays = (date) ->
# return the available days for a given month (ajax call)
getDays()
formatDays = (date) ->
# apply a 'full-day' class to days with 24 hours available and 'partial-day' if they have < 24 hours
availableHours = (day) ->
# manipulate the json response and make an array
showdatepicker = ->
$('.datepicker').datepicker(
...
# make my text field a datepicker
)
showdatepicker()
我试图在这里留下赤裸裸的骨头,但我可以张贴所有东西。
如何让jquery-UI datepicker在页面加载之前对数据库进行ajax调用,每次更改月份时都会这样做?
编辑:
我在coffeescript中添加了一些console.log()。我在一开始就放了一个。似乎javascript根本没有执行,除非我刷新页面(除非我刷新否则没有输出)。
我该如何解决这个问题?
答案 0 :(得分:0)
我遇到的问题是在Gemfile中:turbolinks。 Turbolinks的行为与设计一致 - 除非我刷新页面,否则它不会重新加载页面。这在我的IE浏览器中起作用的原因是当turbolinks失败时(旧浏览器)它正常失败并允许重新加载页面(我从Rails Cast #390学到了所有这些。
我需要做的只是
将我的代码放在变量
中ready = - &gt; (我的所有代码)
在文档就绪
上调用此变量(文档)$。就绪(就绪)
告诉关于它的turbolinks
$(document).on(&#39; page:load&#39;,ready)