您的位置:首页 > Web前端 > JavaScript

EXTJS4.0 datefield时间控件更改为获取服务器时间

2013-07-19 10:02 411 查看


EXTJS4.0 datefield时间控件更改为获取服务器时间

[javascript] view
plaincopy

var fs = Ext.create('Ext.form.Panel', {

region : 'north',

frame : true,

bodyStyle : 'padding:4px 2px 3px 4px',

width : document.body.clientWidth,

fieldDefaults : {

labelAlign : 'left',

msgTarget : 'side'

},

items : [ {

xtype : 'container',

anchor : '100%',

layout : 'column',

items : [ {

xtype : 'container',

columnWidth : .2,

layout : 'anchor',

defaultType : 'datefield',

items : {

fieldLabel : '日期',

anchor : '90%',

id:'time',

format : 'Y-m-d',

timePicker : true,

editable : false,

allowBlank : false,

//value : Ext.Date.add(new Date(), Ext.Date.DAY, 1),

listeners : {

'change' : specchangedatefun

}

}

} ]

} ]

});

因为

[javascript] view
plaincopy

value : Ext.Date.add(new Date(), Ext.Date.DAY, 1),

会默认获取当前浏览器所在机器的时间,所以如果用户主动更改时间的话,会有些许问题

在页面开始加载的时候 我就先获取服务器的时间 然后传到前台 给前台的日期控件赋值

[javascript] view
plaincopy

Ext.Ajax.request( {

timeout : 3000,

url : 'getdate.action',

success : function(response, config) {

json = Ext.JSON.decode(response.responseText);

var date=new Date(json.date);

var d=Ext.Date.add(date,Ext.Date.DAY, 1)

Ext.getCmp('time').setValue(d);

},

failure : function(response,options) {

}

})//Ajax end

如果遇到出现什么getFullYear的错误的话 可以先把 上面注释掉的value赋值语句释放掉,无大碍,顶多就是用浏览器的时间先赋值一次 代码再用服务器的时间来一次
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: