javascript - 如何在日期字段中将日期的默认值设置为下周六?

标签 javascript extjs extjs5

如何在以下代码中将 Value 和 minValue 属性设置为下一个星期六?

我想在日期字段中,默认显示日期是星期六的日期。假设今天是 08/09/2018,默认值显示应该是 08/11/2018。您可以在 Sencha fiddler 中运行以下代码:

Ext.application({
  name: 'Fiddle',

  launch: function() {
    Ext.create('Ext.form.field.Date', {
      value: Ext.Date.add(new Date, Ext.Date.DAY, 6), // defaults to today
      minValue: Ext.Date.add(new Date(), Ext.Date.DAY, 6),
      renderTo: Ext.getBody()
    });
  }
});

最佳答案

这是一个类似这样的工作版本:

Ext.application({
  name: 'Fiddle',
  launch: function() {

    function getNextDayOfWeek(date, dayOfWeek) {
      var resultDate = new Date(date.getTime());
      resultDate.setDate(date.getDate() + (7 + dayOfWeek - date.getDay()) % 7);
      return resultDate;
    }

    var nextSaturday = getNextDayOfWeek(new Date(), 6)

    Ext.create('Ext.form.Panel', {
      renderTo: Ext.getBody(),
      width: 300,
      bodyPadding: 10,
      title: 'Date',
      items: [{
        xtype: 'datefield',
        anchor: '100%',
        fieldLabel: 'From',
        name: 'from_date',
        value: nextSaturday,
        minValue: nextSaturday
      }]
    });
  }
});

您可以在实际中看到它 here .关键是来自 heregetNextDayOfWeek 函数.

关于javascript - 如何在日期字段中将日期的默认值设置为下周六?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51758958/

相关文章:

javascript - 删除 Ext.panel.Header 上标题和工具之间的对齐方式

javascript - 当我尝试使用 jasmine 进行测试时,应用程序文件夹未加载到 Ext.appliation 中

javascript - 您如何称呼 Oracle 使用的顶部导航菜单?

javascript - Angular7 中是否存在某种表达 addeventlistener 和 getelementbyId 的方法?

javascript - 如何在Sublime Text 3中运行HTML,CSS和JavaScript代码?

Javascript - 如何将类工厂定义为 Extjs 风格?

javascript - ExtJS 4 菜单颜色选择器 (Ext.menu.ColorPicker) 中的 CustomColors 颜色

javascript - 将可选的多个参数传递给函数

ExtJS 关闭字段验证 onkeyup

javascript - 在 Extjs 网格中的标题下方添加一个组件