首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用Knockout填充引导-数据报警器

用Knockout填充引导-数据报警器
EN

Stack Overflow用户
提问于 2014-09-16 01:02:47
回答 2查看 6.5K关注 0票数 0

我有一个引导datepicker小部件,非常适合Knockout:也就是说,我可以选择一个日期,并且模型被正确更新。然而,当我第一次初始化我的模型时,我似乎无法开始填充日期。

以下是我的HTML:

代码语言:javascript
运行
复制
<div class="controls">
<input type="text" class="datepicker" data-date-format="dd-mm-yyyy" data-bind="datepicker: someDate" />
<div data-bind="text: someDate"></div>

以及相应的JavaScript:

代码语言:javascript
运行
复制
var self = this;

$('.datepicker').datepicker();    

ko.bindingHandlers.datepicker = {
    init: function(element, valueAccessor, allBindingsAccessor) {
        //initialize datepicker with some optional options
        var options = allBindingsAccessor().datepickerOptions || {};
        $(element).datepicker(options);

        //when a user changes the date, update the view model
        ko.utils.registerEventHandler(element, "changeDate", function(event) {
            var value = valueAccessor();
            if (ko.isObservable(value)) {
                value(event.date);
            }                
        });
    },
    update: function(element, valueAccessor)   {
        var widget = $(element).data("datepicker");
        //when the view model is updated, update the widget
        if (widget) {
            widget.date = ko.utils.unwrapObservable(valueAccessor());
            widget.setValue();            
        }
    }
}; // end KO binding datepicker

function AppViewModel() {
    self.someDate = ko.observable(new Date('01/01/2004'));    
}

// Activates knockout.js
ko.applyBindings(new AppViewModel());

和相应的JSFiddle:http://jsfiddle.net/philcms1/0mftjtk4/2/

当模型第一次绑定时,如何填充小部件?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-09-16 17:30:38

您可以在这里查看一个工作示例这里 (取自眼色晕船)

正如您所说,使用value: myDate解决了问题。

票数 1
EN

Stack Overflow用户

发布于 2014-09-16 06:02:20

value:someDate无疑是一种更明确的方式,但您也可以在init回调中调用jquery的setDate方法,如

http://jsfiddle.net/zkgp0b4b/1/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25859179

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档