我已经分叉了似乎不再维护的filamentgroup daterangepicker *,以便包含一些已发布的修补程序并解决它只支持页面上的单个datarangepicker的问题。
我已经阅读了有关设置jquery插件和设置jquery小部件的文档的方法。但是widget的问题在于,如果将多个元素传递给窗口小部件,它将为每个元素创建一个单独的窗口小部件。日期范围选择器的一个功能是传递2个输入字段作为单个日期范围的开始和结束。因此,在这种情况下,单独处理的多个元素无用。
除了使用$ .widget转换现有插件以允许在页面上多次使用它之外,还有其他最佳实践。
我猜测插件闭包中定义的vars只需要不存在,除非它们是用于所有实例的静态值,实例特定的vars需要与通过数据属性传入的选择器相关联或插件保留索引数组的id?我是在正确的轨道上吗?除了定义的vars之外还缺少其他东西?
有关如何添加对jquery插件的多个实例的支持的任何指针或示例都表示赞赏。
*原始代码来自 - http://filamentgroup.com/examples/daterangepicker_v2/
答案 0 :(得分:0)
最佳实践的一个方面是在空容器(div / spans)上调用插件并在初始化时生成两个日期字段。
这样,您可以根据需要使用单个语句创建尽可能多的日期范围小部件,并且只需最少的努力来准备HTML。
This tutorial可以说是最好的插件模式。直到你意识到它超酷的那一刻,这是一个尴尬的诅咒。