html - jQuery Mobile DateBox 和 Knockout.js

标签 html jquery-mobile knockout.js datebox

有人成功用过jQuery Mobile DateBox使用 Knockout.js?

在选择日期之前提供要显示的值时,我无法使绑定(bind)正常工作。它仍然是空白的。如果我使用标准文本输入,绑定(bind)工作正常。

<input id="start" type="date" data-bind="value: start" data-role="datebox" data-options='{"mode": "timeflipbox", "useButton": false, "useFocus": true, "dialogForce" : true, "transition" : "slidedown"}'>

//In the view model:
this.start = ko.observable(startTime);

我已经尝试过

$('#start').datebox('refresh')

但运气不好......

最佳答案

我最终为 knockout 编写了一个自定义绑定(bind),这似乎可以解决问题:

    ko.bindingHandlers.jqmDateBox = {
    update: function (element, valueAccessor, allBindingsAccessor, context) {
        setTimeout(function () { 
            var value = valueAccessor();
            var valueUnwrapped = ko.utils.unwrapObservable(value);
            $(element).val(valueUnwrapped);
            $(element).data('datebox').options.defaultPickerValue = valueUnwrapped;
        }, 0);
    }
}

用法:

<input id="end" name="end" type="date" data-bind="value: end, jqmDateBox: end" data-role="datebox" />

关于html - jQuery Mobile DateBox 和 Knockout.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12178962/

相关文章:

javascript - 在 Phonegap 模拟器/iPhone 中解析 JSON 与通过浏览器解析 JSON

php - 与 Codeigniter 一起使用的 jQuery Mobile 上的 Ajax 请求

triggers - Knockout.JS:根据可观察的变化触发

javascript - Knockout + Bootstrap 3 单选按钮

html - 在没有 flexbox 的 div 中居中内联元素

html - 将第二个下拉菜单添加到第一个下拉菜单

android - 您使用 RhoMobile + JqueryMobile + KnockoutJS 的体验如何?

javascript - Angular Material md-input-container 占用空间大

javascript - 如何使复选符号出现在同一行中的输入元素之后?

jquery - 数据绑定(bind)单选按钮没有样式