将下列代码复制到
<script type="text/javascript" src="${pageContext.request.contextPath}/jslib/ext/ext-all.js"></script>
下一行就好。
Ext.override(Ext.DatePicker, {
clearText:'清空',
// private
onRender : function(container, position){
var m = [
'<table cellspacing="0">',
'<tr><td class="x-date-left"><a href="#" title="', this.prevText ,'"> </a></td><td class="x-date-middle" align="center"></td><td class="x-date-right"><a href="#" title="', this.nextText ,'"> </a></td></tr>',
'<tr><td colspan="3"><table class="x-date-inner" cellspacing="0"><thead><tr>'],
dn = this.dayNames,
i;
for(i = 0; i < 7; i++){
var d = this.startDay+i;
if(d > 6){
d = d-7;
}
m.push('<th><span>', dn[d].substr(0,1), '</span></th>');
}
m[m.length] = '</tr></thead><tbody><tr>';
for(i = 0; i < 42; i++) {
if(i % 7 === 0 && i !== 0){
m[m.length] = '</tr><tr>';
}
m[m.length] = '<td><a href="#" hidefocus="on" class="x-date-date" tabIndex="1"><em><span></span></em></a></td>';
}
m.push('</tr></tbody></table></td></tr>',
'<tr><td colspan="3" class="x-date-bottom" align="center">',
'<table><tr><td class="x-date-today"></td><td class="x-date-clear"></td></tr></table>',
'</td></tr>',
this.showToday ? '<tr><td colspan="3" class="x-date-bottom" align="center"></td></tr>' : '',
'</table><div class="x-date-mp"></div>');
var el = document.createElement('div');
el.className = 'x-date-picker';
el.innerHTML = m.join('');
container.dom.insertBefore(el, position);
this.el = Ext.get(el);
this.eventEl = Ext.get(el.firstChild);
this.prevRepeater = new Ext.util.ClickRepeater(this.el.child('td.x-date-left a'), {
handler: this.showPrevMonth,
scope: this,
preventDefault:true,
stopDefault:true
});
this.nextRepeater = new Ext.util.ClickRepeater(this.el.child('td.x-date-right a'), {
handler: this.showNextMonth,
scope: this,
preventDefault:true,
stopDefault:true
});
this.monthPicker = this.el.down('div.x-date-mp');
this.monthPicker.enableDisplayMode('block');
this.keyNav = new Ext.KeyNav(this.eventEl, {
'left' : function(e){
if(e.ctrlKey){
this.showPrevMonth();
}else{
this.update(this.activeDate.add('d', -1));
}
},
'right' : function(e){
if(e.ctrlKey){
this.showNextMonth();
}else{
this.update(this.activeDate.add('d', 1));
}
},
'up' : function(e){
if(e.ctrlKey){
this.showNextYear();
}else{
this.update(this.activeDate.add('d', -7));
}
},
'down' : function(e){
if(e.ctrlKey){
this.showPrevYear();
}else{
this.update(this.activeDate.add('d', 7));
}
},
'pageUp' : function(e){
this.showNextMonth();
},
'pageDown' : function(e){
this.showPrevMonth();
},
'enter' : function(e){
e.stopPropagation();
return true;
},
scope : this
});
this.el.unselectable();
this.cells = this.el.select('table.x-date-inner tbody td');
this.textNodes = this.el.query('table.x-date-inner tbody span');
this.mbtn = new Ext.Button({
text: ' ',
tooltip: this.monthYearText,
renderTo: this.el.child('td.x-date-middle', true)
});
this.mbtn.el.child('em').addClass('x-btn-arrow');
var today = (new Date()).dateFormat(this.format);
if(this.showToday){
this.todayKeyListener = this.eventEl.addKeyListener(Ext.EventObject.SPACE, this.selectToday, this);
this.todayBtn = new Ext.Button({
renderTo: this.el.child('td.x-date-today', true),
text: String.format(this.todayText, today),
tooltip: String.format(this.todayTip, today),
handler: this.selectToday,
scope: this
});
}
//增加清空按钮事件
this.clearDate=function(){
this.setValue(new Date().clearTime());
this.fireEvent('select', this, null);
};
this.todayBtn = new Ext.Button({
renderTo: this.el.child('td.x-date-clear', true),
text: this.clearText,
tooltip: this.clearText,
handler: this.clearDate,
scope: this
});
this.mon(this.eventEl, 'mousewheel', this.handleMouseWheel, this);
this.mon(this.eventEl, 'click', this.handleDateClick, this, {delegate: 'a.x-date-date'});
this.mon(this.mbtn, 'click', this.showMonthPicker, this);
this.onEnable(true);
}
});
分享到:
相关推荐
2. **添加清空按钮**: 在组件的配置中,我们需要添加一个额外的工具按钮,用于清空日期。这可以通过`tools`配置项实现。 ```javascript { tools: [{ type: 'clear', handler: function() { this.up('...
本文将深入探讨“不错的日历控件”,特别是基于JavaScript和EXT技术实现的这种控件。 首先,JavaScript是一种广泛应用于网页开发的脚本语言,它可以动态更新网页内容,提高用户体验。在网页中实现日历控件,...
通过`border`布局管理器组织页面结构,使用面板组件创建可折叠的区域,并通过盒模型组件添加静态内容。此外,还通过事件监听实现了动态的用户交互功能。这种布局方式非常适合于需要分区域展示内容的大型企业级应用,...
基于EXT框架的JS日历插件,EXT框架给人的感觉小清新,十分漂亮,很多JS可以和EXT框架结合起来,甚至是动态的WEB开发语言也可以做到。本代码是一个JavaScript结合EXT实现的日历选择器,既漂亮美观的同时,也保证功能...
Ext 2.0 框架结构图 Ext.Component ,Ext.BoxComponent ,Ext.Button, Ext.Editor
1. **复选框行为**:在`TreePanel`中添加复选框,每个节点都有一个与之关联的复选框。用户可以通过点击这些复选框来改变节点的选中状态。 2. **父节点与子节点的联动**:描述中提到的“选中父节点,自动选中子节点...
Ext框架简介 Ext框架简介是 Ajax 框架,可以用来开发带有华丽外观的富客户端应用,使得我们的 b/s 应用更加具有活力及生命力,提高用户体验。Ext 是一个用javascript编写,与后台技术无关的前端ajax框架。因此,...
它提供了多种预定义的组件,如按钮、面板、表单、树形视图等,这些组件可以被配置和定制以匹配Win 7的视觉样式。例如,我们可以调整窗口边框、标题栏颜色、图标样式等,来让EXT应用看起来更像Win 7的窗口。 1. **...
CalendarLite是一款基于EXT框架的日历插件,EXT是一个流行的JavaScript库,用于构建富客户端应用程序。EXT框架提供了丰富的组件和布局管理功能,使得开发者能够轻松创建交互式、响应式的Web应用。CalendarLite作为...
EXT JS的组件库包括表格、树形视图、面板、窗口、菜单、按钮等,这些组件都具有高度定制性和交互性。通过这些组件,开发者可以构建出复杂的用户界面,实现数据绑定、拖放操作、数据网格、表单验证等多种功能。 在...
【标题】"ext3.2 强大的日历功能"所指的是一款基于EXT-JS框架开发的日历组件。EXT-JS是一个广泛使用的JavaScript库,它提供了丰富的用户界面组件,用于构建复杂的、交互性强的Web应用程序。这款日历组件是EXT-JS库中...
Ext JS Calendar 日历是一款强大的日历控件,适用于构建具有丰富功能的日程管理应用。它提供了多种视图,包括月视图、日视图和周视图,允许用户灵活查看和管理时间安排。本文将深入探讨Ext JS Calendar的核心组件、...
在"Ext农历日历(修改)"中,开发人员已经对EXT的原生日历组件进行了增强,添加了农历的支持。农历在中国以及其他东亚国家的日常生活中非常重要,因此这个修改版的日历对于这些地区的用户来说非常实用。农历的计算通常...
组件是EXT的核心,它们是构建应用程序的基本单元,包括按钮、表格、面板、表单等。在EXT5.0中,组件的可配置选项更多,而且提供了更强大的布局管理,如绝对布局、表单布局、流式布局等,使开发者能更自由地设计UI...
7. **可扩展性**:Ajax-ext的设计允许开发者根据需求扩展功能,添加自定义组件或插件,满足特定项目需求。 **四、使用Ajax-ext框架** 使用Ajax-ext框架,开发者需要具备JavaScript基础,熟悉DOM操作和JSON格式。在...
Ext Calendar 是 ExtJS 的一个功能非常强大的日历显示组件,支持包括 IE、Firefox、Safari、Chrome 和 Opera 浏览器。 类结构图如下所示: 运行效果图如下: 标签:ExtCalendar
ext前台框架分层技术,前台分controller,model,store,view四个模块
EXT按钮拥有丰富的属性和配置选项,使得开发者可以自定义其外观、行为以及交互效果。以下是对EXT按钮属性的详细解释,并结合图片进行对应说明: 1. `text`:这是按钮上显示的文本。例如,`text: '点击我'` 将在按钮...
7. 动画和特效:利用Ext JS的动画接口,添加平滑的过渡效果和动态显示。 8. 测试与优化:进行功能测试和性能优化,确保应用的稳定性和性能。 总的来说,Ext JS 是一个功能强大、全面的前端框架,尤其适合开发大型、...
Ext框架JavaScript开源框架Ext框架JavaScript开源框架