2013-08-20 61 views
1

我对sencha touch很陌生,我对dateFormat有问题。sencha touch dateFormat不起作用?

所以,这里是一些代码,我写道:

首先我有一个datepickerfield选择日期。

 var activityDateCreator = { 
     xtype: 'datepickerfield', 
     destroyPickerOnHide: true, 
     name: 'date', 
     label: 'Datum', 
     dateFormat: 'd.m.Y', 
     value: new Date(), 
     picker: { 
      yearFrom: 2013, 
      yearTo: 2014 
     }, 
     required: true 
    }; 

在这一点上显示dateFormat,我希望它是如何。

日期保存在localStorage中。

模型看起来像:

Ext.define('RMA-App.model.Activity', { 
extend: 'Ext.data.Model', 

config: { 
    idProperty: 'id', 
    fields: [ 
     { name: 'id', type: 'int' }, 
     { name: 'name', type: 'string' }, 
     { name: 'sport', type: 'string' }, 
     { name: 'date', type: 'date' , dateFormat: 'd.m.Y'}, 
     { name: 'time', type: 'string' }, 
     { name: 'street', type: 'string' }, 
     { name: 'place', type: 'string' }, 
     { name: 'comments', type: 'string' }, 
     { name: 'save', type: 'boolean'}, 
     { name: 'latitude', type: 'number'}, 
     { name: 'longitude', type: 'number' } 
    ], 
    validations:[ 
     { type: 'presence', field: 'id' }, 
     { type: 'presence', name: 'date'}, 
     { type: 'presence', name: 'name', message: "Bitte geben Sie Ihren Namen an!"}, 
     { type: 'presence', name: 'time', message: "Bitte geben Sie eine Zeit an!"}, 
     { type: 'format', name: 'time', matcher: /^([01]?[0-9]|2[0-3]):[0-5][0-9]$/, 
     message: "Bitte stellen Sie sicher, dass sie die Zeit im richtigen Format angeben. <br>Beispiel: 08:30"}, 
     { type: 'presence', name: 'street', message: "Bitte geben Sie die Straße für den Treffpunkt an!"} 

    ] 
} 

});

现在我想在一个文本框中显示日期,它与日期选择器不在同一个视图中。

var activityDate = { 
     xtype: 'textfield', 
     name: 'date', 
     label: 'Datum', 
     readOnly: true 
    }; 
在浏览器中,我可以看到日期

,但它是这个样子: '星期五2013年8月23日00:00:00 GMT + 0200(MitteleuropäischeSommerzeit)' ,而不是这样的: '23 .08.2013'

希望有人有我的问题的解决方案。

PS:我为我的英文不好对不起:P

回答

0

可以Fri Aug 23 2013 00:00:00 GMT+0200 (Mitteleuropäische Sommerzeit)格式转换为23.08.2013

在ExtJS的

var date = new Date('Fri Aug 23 2013 00:00:00 GMT+0200 (Mitteleuropäische Sommerzeit)'); 
console.log(Ext.Date.format(date, 'd.m.Y')); 

在纯JavaScript

var date = new Date('Fri Aug 23 2013 00:00:00 GMT+0200 (Mitteleuropäische Sommerzeit)'); 
var curr_date = date.getDate(); 
var curr_month = date.getMonth() + 1; 
var curr_year = date.getFullYear(); 
console.log(curr_date + "." + curr_month + "." + curr_year); 
+0

@vishwa请你扔一些光对这个太http://stackoverflow.com/questions/22247016/edm -datetime,丁文的JavaScript –

相关问题