使用对象禁用日期
disable dates using an object
以下内容不起作用,因为@only
是undefined
(在日志中声明了30次)。我猜函数的执行超出了范围,但我不明白为什么以及如何解决这个问题。
class DateDisabler
constructor: (@only) ->
beforeShowDay: (date) ->
console.log @only
if @only == date.getDate()
[true, 'available', 'This date is a good date']
else
[false, 'unavailable', 'This date is NOT good']
jQuery ->
$('.datepicker').each (i, e) ->
dates = $(e).data('only')
disabler = new DateDisabler dates
$(e).datepicker({beforeShowDay: disabler.beforeShowDay})
此外,如果你认为这是一个好方法,我想听听你的意见。我正在尝试获得一个html div
来处理以下内容:
.datepicker{data: {only: 5}}
小提琴来了。很抱歉,由于某些原因,它没有在那里运行(如果你知道的话…),但至少有html和js更喜欢它。
感谢
Alex对问题的根本原因是正确的,因此您可以内联回调函数,但在CoffeeScript中解决this
问题的更常用方法是在定义回调函数时使用胖箭头:
beforeShowDay: (date) =>
#...
这将把函数绑定到您期望它拥有的上下文。此外,您可以在上使用CoffeeScripthttp://jsfiddle.net/通过在侧边栏的面板中选择它。
演示:http://jsfiddle.net/ambiguous/Ztgsq/
相关文章:
- 比较从函数和生成的日期对象
- 如何获得一个只有时间的moment.js日期对象
- 使用moment.js获取时间分区的偏移日期对象
- 获取本地时间的JS日期,日期对象中没有时区详细信息
- 将某个时间格式转换为日期对象
- 正在使用日期字符串初始化javascript日期对象
- 在CouchDB Map函数中发出日期时-对日期对象调用的内容
- 如何将事件的日期放入fullcalendar中的日期对象中
- 为什么在JavaScript中可以从另一个日期对象中减去日期对象
- 理解日期对象接收参数时的getDay()方法
- JS日期对象setUTCMonth()将月份增加2
- 时间-日期对象JavaScript getUTCMilliseconds
- 将带有 AM/PM 的日期字符串转换为 javascript 日期对象
- Javascript 测试中的假日期对象
- 转换/格式化日期对象
- 如何在发布JavaScript日期对象时保留时区偏移量
- JS日期对象在某个范围内的百分比
- 无法从日期对象javascript获取日期和月份
- javascript日期对象未返回正确的日期
- Javascript日期对象-JSFiddle中的不同值