【问题标题】:How can I get a twitter bootstrap datepicker to work with Meteor?如何让 twitter 引导日期选择器与 Meteor 一起使用?
【发布时间】:2012-08-09 13:48:01
【问题描述】:

我宁愿使用 Bootstrap 的 Meteor 包实现,而不是文件较少的版本,但我很难让日期选择器工作。

似乎有三个版本处于不同的状态,最后一个由 Aymkdn 编写并准备就绪。

http://www.eyecon.ro/bootstrap-datepicker/

https://github.com/eternicode/bootstrap-datepicker/

https://github.com/Aymkdn/Datepicker-for-Bootstrap

Aymkdn 的版本在普通的 html 中运行良好,但不是从 Meteor 提供的,我很想弄清楚原因。

我想将 Aymkdn 的一个与 Meteor 一起使用,但我无法让它工作。我认为这可能与 Meteor 中的 js 加载顺序或 DOM 渲染有关。关于如何让它发挥作用的任何见解?

谢谢 史蒂夫

【问题讨论】:

  • bootstrap-datepicker 现在是 Meteor 上的一个智能包。只需meteor add bootstrap-datepicker
  • 这里没有列出docs.meteor.com/#packages。你的意思是它可能是一个mrt包吗?
  • 试试meteor list。你在那里找到它吗?

标签: twitter-bootstrap meteor


【解决方案1】:

最初发布此问题时,也许这种方法不可用,但我在呈现其模板时正在初始化日期选择器。

Template.templateName.rendered = function() {
    $('#datepicker').datepicker();
}

这里是活动的链接:http://docs.meteor.com/#template_rendered

使用这种方法,我无需维护会话属性或处理焦点事件。由于会话属性被触发,当模板被卸载并返回时,Prashant 的解决方案对我不起作用。我还有一个问题,即数据选择器在第一次获得焦点时没有显示。

是的,每次渲染模板时数据选择器都会被初始化,但我认为这没关系,因为我很确定模板资源在它们之间导航时会被清理。

【讨论】:

    【解决方案2】:

    为了让日期选择器工作,这就是我所做的,

    // At the beginning of the script
    Session.set("datepicker_unset", 1);
    
    Template.template_name.events = {
        'focus #date-id' : function(event) {
            if (Session.get("datepicker_unset")) {
                $(event.target).datepicker();
                Session.set("datepicker_unset", 0);
            }
            // Anything else on #date-id focus?
        },
        // Any other events here
    }
    

    我猜你正在使用$(document).ready() 方法。我也这样做了,因为它对我不起作用,我认为这将是最好的解决方案。

    希望这对你也有用!

    【讨论】:

    • 我必须把它作为一个包来做吗?或者它可以进入 /client 吗?
    • 是的,您可以将其添加到 /client 中,它将开始工作。我已经相应地编辑了答案。
    • 您可能只需要调用 .datepicker() 一次。每次触发焦点事件时都会调用它。这将每次设置日期选择器。
    • 感谢您注意到这一点。编辑后不会每次都触发 datepicker()。我为此使用了 Session 类。
    • 这工作正常,但我无法从引导程序中选择 datetimepicker。 datepicker 正在工作,但不是 datetimepicker。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-06
    • 1970-01-01
    • 2018-10-13
    • 2013-09-02
    • 1970-01-01
    • 1970-01-01
    • 2017-04-22
    相关资源
    最近更新 更多