啸天
啸天
  • 发布:2016-08-08 14:31
  • 更新:2019-10-12 20:41
  • 阅读:2455

【报Bug】Dtpicker 的 beginDate 没起作用

分类:MUI
mui

如题

<button id='demo2' data-options='{"type":"date","beginDate":"2016-08-08"}'

HBuilder 自带的示例项目

varstion 2.0.0

$.init();
var result = $('#result')[0];
var btns = $('.btn');
btns.each(function(i, btn) {
btn.addEventListener('tap', function() {
var optionsJson = this.getAttribute('data-options') || '{}';
var options = JSON.parse(optionsJson);
var id = this.getAttribute('id');
/*

  • 首次显示时实例化组件
  • 示例为了简洁,将 options 放在了按钮的 dom 上
  • 也可以直接通过代码声明 optinos 用于实例化 DtPicker
    /
    var picker = new $.DtPicker(options);
    picker.show(function(rs) {
    /
    • rs.value 拼合后的 value
    • rs.text 拼合后的 text
    • rs.y 年,可以通过 rs.y.vaue 和 rs.y.text 获取值和文本
    • rs.m 月,用法同年
    • rs.d 日,用法同年
    • rs.h 时,用法同年
    • rs.i 分(minutes 的第二个字母),用法同年
      /
      result.innerText = '选择结果: ' + rs.text;
      /
    • 返回 false 可以阻止选择框的关闭
    • return false;
      /
      /
    • 释放组件资源,释放后将将不能再操作组件
    • 通常情况下,不需要示放组件,new DtPicker(options) 后,可以一直使用。
    • 当前示例,因为内容较多,如不进行资原释放,在某些设备上会较慢。
    • 所以每次用完便立即调用 dispose 进行释放,下次用时再创建新实例。
      */
      picker.dispose();
      });
      }, false);
      });
2016-08-08 14:31 负责人:无 分享
已邀请:
Trust

Trust - 少说废话

请贴出问题代码,以及相应的JS版本信息。
请参阅dtpicker组件
beginDate参数的类型为Date

var picker = new $.DtPicker({  
    type: 'date',  
    beginDate: new Date(2016, 0, 01),  
    endDate: new Date()  
});  
picker.show(function(rs) {  
    console.log(rs);  
});  
  • 啸天 (作者)

    版本问题。。。。重新覆盖了一下mui.picker.min 就可以了

    2016-08-08 16:07

  • 啸天 (作者)

    H5模式 日期弹出选择框严重掉帧 卡顿感明显 ,这个问题能解决下么,现在用 iPad safair 浏览,卡顿很明显

    2016-08-10 21:56

  • 8***@qq.com

    你的源码压根就没有写限制月和日的,只有一个beginYear


    源码如下

    _createMonth: function(e) {

    var t = this

    , i = t.options

    , a = t.ui

    , n = [];

    if (i.customData.m)

    n = i.customData.m;

    else

    for (var r = 1; 12 >= r; r++) {

    var s = t._fill(r);

    n.push({

    text: s,

    value: s

    })

    }

    a.m.picker.setItems(n)

    }


    直接给我循环了12次你让我如何是好,程序员开发的时候没有走心吧

    版本号 varstion 2.0.0

    2018-09-05 18:31

阿杰影

阿杰影

没有Date类型啊,需要引入特别的js么?

  • 赵梦欢

    Date是javascript内置对象

    2016-09-26 14:48

8***@qq.com

8***@qq.com

你的源码压根就没有写限制月和日的,只有一个beginYear

源码如下
_createMonth: function(e) {
var t = this
, i = t.options
, a = t.ui
, n = [];
if (i.customData.m)
n = i.customData.m;
else
for (var r = 1; 12 >= r; r++) {
var s = t._fill(r);
n.push({
text: s,
value: s
})
}
a.m.picker.setItems(n)
}

直接给我循环了12次你让我如何是好,程序员开发的时候没有走心吧
版本号 varstion 2.0.0

3***@qq.com

3***@qq.com

别瞎掰了,基本上就是文档问题,官方的文档过老,使用以下方式:
BeginYear:2016,
EndYear:2018

该问题目前已经被锁定, 无法添加新回复