【问题标题】:datefield submitted as empty string extjs 4日期字段作为空字符串 extjs 4 提交
【发布时间】:2013-12-06 13:45:17
【问题描述】:

我一直在扫描此站点以寻找解决方案,但问题仍然存在。我在一个表单中有两个日期选择器,它们应该在提交表单时提交一个日期,但是:

      start= Ext.util.Format.date(Ext.getCmp('start').getValue(),'Ymd');
      end= Ext.util.Format.date(Ext.getCmp('end').getValue(),'Ymd');

这些代码行会在对服务器的 GET 调用中产生两个空字符串。我不明白为什么。您将在下面找到日期字段的代码:

 {
xtype: 'datefield',
fieldLabel: 'Start date',
format: 'Ymd',
id:"start",
//altFormats: 'Ymd',
listeners: {
    'change': function(me) {
        alert(me.getSubmitValue());
    }
}},
{
xtype: 'datefield',
fieldLabel: 'End date',
format: 'Ymd',
id: "end",
//altFormats: 'm/d/Y',
listeners: {
    'change': function(me) {
        alert(me.getSubmitValue());
    }
}},

你看到两个listener下定义的字段了吗?虽然它们工作得很好,但我的意思是,要提交的值实际上是我正在搜索的字符串,但我无法使用我向您展示的前两行代码。我什至试着写:

   getSubmitValue()

代替:

   getValue()

但结果根本没有改变。 知道为什么吗?

【问题讨论】:

  • 您发布的代码似乎没问题。您的应用程序中真的只有一个 id 为“start”和“end”的组件吗?你如何将值发送到服务器?
  • 你是对的,这是错误的 ajax 调用。非常感谢!!!!
  • 很高兴您解决了问题。您可能应该删除该问题,因为它不太可能对其他人有帮助或现在得到答案。

标签: forms extjs extjs4 datefield


【解决方案1】:

更改甚至带有默认参数,因此您无需对 datefield 对象(即“this”)进行额外调用。

`更改(此,新值,旧值,eOpts)`

http://docs.sencha.com/extjs/4.2.2/#!/api/Ext.form.field.Field-event-change

只是一个简短的说明,您应该将 'name' 属性添加到您的字段中以利用 extjs 的 getter 和 setter。尝试使用 itemId(本地范围)而不是 id(全局范围)。如果您有多个相同表单的实例,这将为您省去一些麻烦。

【讨论】:

    【解决方案2】:

    将配置 submitFormat 添加到您的字段中,如下所示:

    {
        xtype: 'datefield',
        fieldLabel: 'Start date',
        format: 'Ymd',
        submitFormat: 'Ymd',
        id:"start",
        listeners: {
            'change': function(me) {
                alert(me.getSubmitValue());
            }
        }
    },
    {
        xtype: 'datefield',
        fieldLabel: 'End date',
        format: 'Ymd',
        submitFormat: 'Ymd',
        id: "end",
        listeners: {
            'change': function(me) {
                alert(me.getSubmitValue());
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-01
      • 2019-10-10
      • 1970-01-01
      • 2012-11-26
      • 2013-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多