我的型号代码是
Ext.define('gantt.model.Project', {
extend: 'Ext.data.Model',
fields : [
{ name: 'id', type: 'int', useNull: true, mapping: 'projectid'},
{ name: 'title', type: 'string', mapping: 'projecttitle'},
{ name: 'name', type: 'string', mapping: 'projectname'},
{ name: 'description', type: 'string', mapping: 'projectdesc'},
{ name: 'startdate', type: 'date', mapping: 'startdate', dateFormat :'time'},
{ name: 'enddate', type: 'date', mapping: 'enddate', dateFormat :'time'},
]
});
我的看法是
Ext.define('gantt.view.projectmgt.projectAdd', {
extend: 'Ext.form.Panel',
alias: 'widget.projectadd',
title: 'New Project Detail Input Window',
width: '50%',
xtype:'fieldset',
title: 'Project Details',
collapsible: true,
defaultType: 'textfield',
layout: 'anchor',
defaults: {
anchor: '100%'
},
items :[{
fieldLabel: 'Title',
name: 'title',
xtype: 'textfield'
},{
fieldLabel: 'Name',
name: 'name',
xtype: 'textfield'
},{
fieldLabel: 'StartDate',
name: 'startdate',
xtype: 'datefield',
format: 'Y/m/d'
},{
fieldLabel: 'EndDate',
name: 'enddate',
xtype: 'datefield',
format: 'Y/m/d'
}, {
xtype: 'htmleditor',
name: 'description',
fieldLabel: 'Description',
height: 200,
anchor: '100%'
}],
buttons: [{
text: 'Save',
action: 'show-gantt-view'
},{
text: 'Cancel',
action: 'cancel'
}]
});
当我单击它时,我的表单面板有保存按钮我的控制器执行以下方法
createProjectGanttpanel: function(btn) {
var win = this.getProjectAdd().getForm().getValues();
console.log('PANEL VALUES ARE ::'+win["startdate"]);
record = Ext.create('gantt.model.Project');
record.set(win);
this.getProjectsStore().add(record);
this.getProjectsStore().sync();
}
此方法将值分配给模型,然后将它们存储到我的数据库中。但是当我选择在控制台日志中打印的格式为“2012/01/31”的日期时遇到问题,但是当我看到萤火虫 POST 选项卡时,它显示 startdate 传递为“-19800000”,enddate 传递为“- 19800000'
在服务器端,当我看到我的 JAVA 控制台时,它会显示“startdate”:“1970-01-01T05:30:02”,“enddate”:“1970-01-01T05:30:02”,这是不正确的。因此,在我的网格面板中未查看正确的日期。
我在我的代码中做错了什么。帮助我找到问题,以便我尽快解决。
我使用 extjs 4.0.2a mvc 和 JAVA 作为我的服务器端技术。