Extjs 4.1 datefield - 设置本周的第一天和最后一天

Posted

技术标签:

【中文标题】Extjs 4.1 datefield - 设置本周的第一天和最后一天【英文标题】:Extjs 4.1 datefield - Set first and last day of current week 【发布时间】:2013-10-15 07:43:59 【问题描述】:

我尝试在 http://jsfiddle.net/uXkNr/

中创建一个带有 2 个日期字段的表单面板

这是我的物品

items: [
        xtype: 'datefield',
        labelWidth: 50,
        format: 'd/m/Y',
        fieldLabel: 'From',
        name: 'from_date',
        value: new Date()  // First day of current week
    , 
        xtype: 'datefield',
        labelWidth: 50,
        fieldLabel: 'To',
        format: 'd/m/Y',
        name: 'to_date',
        value: new Date()  // Last day of current week
    ]

我尝试设置本周的第一天和最后一天。示例

today 是:15/10/2013 (d/m/Y)。那么From 的日期是:14/10/2013,To 的日期是:20/10/2013。

这可能吗?怎么做,谢谢。

【问题讨论】:

【参考方案1】:

未经测试:

var now = new Date(),
    startDay = 1, // monday
    currDay = now.getDay(),
    start = now,
    eDate = Ext.Date,
    sub, end;

eDate.clearTime(now);
if (currDay !== startDay) 
    // Sunday
    if (currDay === 0) 
        sub = 6;
     else 
        sub = currDay - startDay;
    
    start = eDate.add(now, eDate.DAY, -sub);

end = eDate.add(start, eDate.DAY, 6);
console.log(start, end);

【讨论】:

以上是关于Extjs 4.1 datefield - 设置本周的第一天和最后一天的主要内容,如果未能解决你的问题,请参考以下文章

Datefield Extjs显示少于100的年份

ExtJS 'datefield' 验证覆盖

如何从 ExtJs 中的 DateField 获取日期

extjs datefield iso格式?

extjs计算两个DateField所间隔的月份(天数)

Extjs datefield手动显示选择器