问题:
extjs 当日期控件的格式精确到分钟时,提交到struts的时候会丢失精度,只保留年月日,没有了时分秒。
解决办法:
1、将action中与前台对应的属性类型由date修改为string 这样就不会有类型转换的问题。
2、手动转换,string的类型还是不能直接赋给类型为date的属性的。就只能现手动转换一下了。
js:
{
columnWidth : .5,
layout : 'form',
border : false,
items : [{
name : 'signDate',
fieldLabel : '签发时间',
labelStyle : "text-align: right;",
xtype : 'datefield',
format : 'Y-m-d H:i',
cls : 'key',
allowBlank : true,
menu : new DatetimeMenu(),
anchor : '90%'
}]
}
Action:
public class WeatherAction extends BaseAction {
private String signDate; //签发日期
////////////////////////////////////////////////////////////////
public String getSignDate() {
return signDate;
}
public void setSignDate(String signDate) {
this.signDate = signDate;
}
////////////////////////////////////////////////////////////////////////
/**
*
*/
public void save() throws IllegalAccessException, InvocationTargetException{
ListRange<WeatherInfo> formList = new ListRange<WeatherInfo>();
String message = "";
boolean result = false;
WeatherInfo wi = new WeatherInfo();//this.getModelByForm();
BeanUtils.copyProperties(wi, this);
wi.setSignDate(DateUtil.getDateFromString(signDate,"yyyy-MM-dd HH:mm"));//按指定格式将String转换为Date
LoginUserInfo user = this.getLoginUserInfo();
try{
weatherService.saveOrUpdate(wi,user);
result = true;
}catch(Exception e){
e.printStackTrace();
message = MessageConstants.ACTION_SAVE_SERVICE_FAILURE;
if (e.getCause() instanceof BaseDaoException){
message = MessageConstants.ACTION_SAVE_DB_FAILURE;
}
}
formList.setMessage(message);
formList.setSuccess(result);
this.outJson(formList);
}
}
分享到:
相关推荐
默认情况下,EXTJS的时间控件只显示小时和分钟,但我们可以配置它以显示精确到秒的选项。 1. **配置精确到秒**: 要使时间控件显示秒,我们需要在创建时间字段时设置`format`属性。EXTJS支持多种日期格式,包括...
EXTJS5 日期时分秒控件,直接引用到程序中使用。网上有很多extjs4版本的和EXTJS5不兼容。调用实例代码: {labelWidth:60,width: 220,name:'mydate',fieldLabel: '日期',allowBlank: false,xtype: 'datetimefield',...
该代码仅适用于ExtJs5.x, 使用方法: 在Extjs5.x.js文件后引入以下两文件,注意顺序和路径: 例如: <script type="text/javascript" src="ext/5.1/ext-all-debug.js"></script> ${src}/DateTimePicker.js"> ${src...
这个插件的引入,弥补了这一不足,使得开发者可以方便地在日期选择器中添加时分秒的选择,这对于需要精确到时间点的业务场景非常有用,比如预约系统或者日程管理应用。 张川是这个插件的原始作者,他创建了这个功能...
压缩包中的“ExtJS年月日时分秒组件”可能包含了实现这个功能的示例代码,包括EXTJS的配置、布局、样式以及可能的自定义扩展。学习这个组件,你可以查看源码,了解如何组合EXTJS的基本组件和配置,实现一个完整的...
"Extjs 年月日时分秒组件"是一个特定的插件,允许用户在应用程序中选择精确到时分秒的时间。这种组件对于需要用户输入特定时间的应用场景非常有用,例如日程安排、预约系统等。 该组件的核心功能是提供一个交互式的...
为了精确到时分秒,我们需要对其进行扩展或使用第三方插件。 描述中提到的"DateTime.js"可能是这个插件的核心文件,它可能包含了对原生ExtJS时间选择器的扩展,以支持秒的选择。在使用这个插件之前,确保项目已经...
在标题提到的"年月日时分秒、时分秒控件",我们可以理解为这是ExtJS中的日期选择器和时间选择器组件,用于用户友好的日期和时间输入。 1. **日期选择器(Date Field)**:ExtJS的`Ext.form.field.Date`类提供了一个...
在EXTJS框架中,时间日期选择控件是一个重要的组件,特别是在构建用户界面时,需要用户输入精确的时间或日期信息。EXTJS 5.0及更高版本提供了更丰富的功能和改进的用户体验,使得开发者能够创建更加直观和用户友好的...
扩展日期选择时分秒--dateTimeField4.0.html (这个只在EXTJS4.0下显示可以) EXTJS4.1文件夹下面包括 1.只有年月选择--dateYM.html (这个在EXTJS4.0和4.1下显示都是可以的) 2.扩展日期选择时分秒--...
以上就是关于EXTJS中DateField日期精确到时分秒扩展的知识点介绍。在实践中,根据具体需求可能还需要进一步优化,如添加国际化支持、验证规则等。希望这篇博客和代码示例能对你有所帮助。如果你对EXTJS或者这个扩展...
这个"extjs4能用的带时分秒的日期控件"可能就是一个定制的组件,它允许用户不仅选择日期,还能选择具体的时间,精确到小时、分钟和秒。 首先,ExtJS 4的日期时间控件一般会基于`Ext.form.field.Date`进行扩展,增加...
在ExtJs4.2表单控件里分别有个时间控件(datafield)和时间控件(timefield),但是官方提供的控件不能将日期和时分秒整合到一起,我从网上搜集整理了一个可用的选择日期时分秒的拓展控件,extjs版本是4.2,亲测能用,...
### Extjs4.2 日期控件扩展带时分秒:深入解析与应用 #### 一、概述 在Web开发中,特别是在使用ExtJS这样的框架进行界面构建时,日期和时间的选择器是不可或缺的一部分。ExtJS 4.2提供了一个强大的日期控件,但是...
日期控件支持各种事件,如`select`(当用户选择日期时触发)、`change`(当日期字段的值改变时触发)等,这些事件可以绑定到函数来执行相应的业务逻辑。 5. **本地化** ExtJS4支持多语言,因此日期控件可以根据...
在本文中,我们将深入探讨如何使用ExtJS 4与Struts2框架实现文件上传功能。ExtJS是一个强大的JavaScript库,提供了丰富的用户界面组件,而Struts2是Java Web开发中的一个MVC框架,用于处理后端业务逻辑。下面,我们...
总结,ExtJS 4.0.7中的年月日时分秒和时分秒控件提供了灵活的日期和时间选择功能。通过结合使用`Ext.picker.Date`和`Ext.picker.Time`,并结合适当的配置和事件处理,你可以创建出符合项目需求的日期时间选择界面。...
总结起来,"Extjs4登录功能+验证码+struts2"涉及到的知识点有: 1. ExtJS4的表单组件和布局:如何使用`Ext.form.Panel`、`Ext.form.field.Text`和`Ext.button.Button`创建登录表单。 2. 验证码实现:前端展示和后端...
标题 "extjs 跟 struts+json" 暗示了本文将探讨如何使用ExtJS框架与Struts框架结合,通过JSON数据格式进行交互。ExtJS是一个强大的JavaScript库,用于构建富客户端Web应用程序,而Struts是Java Web开发中的一个MVC...
3. **显示问题与解决**:在上述论坛帖子中提到的日期时间控件显示问题,可能涉及到样式、格式配置、时区处理或者与其他组件的交互。解决此类问题通常需要检查控件的配置项,如`format`属性(用于指定日期和时间的...