我创建了一个基于小部件工厂的 Datetime 小部件,类似于 jQuery datepicker,它有一组选项。例如,您可以设置本地化月份(不同当地的月份名称)。
我想创建一个由两个 Datetime 小部件组成的间隔小部件(带有从 - 到的日期选择器)。我的问题是如何避免将内部小部件的默认选项重复到外部小部件。当然,两个内部小部件将传递相同的选项集。
日期时间小部件:
$(function () {
$.widget("Foo.Datetime", {
options: {
months: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "etc"]
}
// other stuff here
}
});
});
如何允许将选项从 Interval 小部件传递到 Datetime 小部件,而不必在间隔小部件内重新定义它们?
显而易见的方法如下,我想避免的女巫:
$(function (){
$.widget("Foo.Interval", {
options: {
months: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "etc"]
},
_create: function(){
var d = this.element.find(".Datetime");
d.Datetime({
months: this.options.months
});
}
// handle _setOption accordingly
})
});