`

ExtJS 微调控件ComnoBox和Time、Date的使用

阅读更多
微调组件是一个具有上下控制按钮的输入组件,该组件一般不直接使用而是作为父类被子类所继承,它的子类需要实现onSpinUp(向上按钮触发的时间)和onSpinDown(向下按钮触发的时间)方法。微调控件很适合于对输入的精细控制,非常便于数字数据的输入,我们可以使用该组件控制非数据的输入。
Ext.form.field.Picker拾取器字段:是一个抽象类,具有唯一个触发按钮用于在字段下方动态弹出拾取面板。通常不能被实例化,而是使用它的子类,在子类中,需要实现createPicker方法来创建用于字段选择的一个拾取器组件。如:Ext.form.field.Date、Ext.form.field.Time、Ext.form.field.ComboBox
Ext.form.field.ComboBox 组合框:支持自动完成、远程加载数据、分页等特性
本地数据源
//本地数据源的组合框 创建数据模型
Ext.regModel('PostInfo',{
fields:[{name:'province'},{name:'post'}]
});
//定义组合框中显示的数据源
var postStore=Ext.create('Ext.data.Store',{
model:'PostInfo',
data:[
  {province:'北京',post:'100000'},
  {province:'通县',post:'101100'},
  {province:'昌平',post:'102200'},
  {province:'大兴',post:'102600'},
  {province:'密云',post:'101500'},
  {province:'延庆',post:'102100'},
  {province:'顺义',post:'101300'},
  {province:'怀柔',post:'101400'}
]
});
//Ext.form.field.ComboBox组合框
//本地数据源的组合框
{
xtype:'combo',
listConfig:{
  emptyText:'为找到匹配项',//当值不存在列表时的提示信息
  maxHeight:100//设置下拉列表的最大高度
},
name:'post',
fieldLabel:'邮政编码',
triggerActio:'all',//单击触发按钮会显示全部数据
store:postStore,//数据源
displayField:'province',//定义要显示的字段
valueField:'post',//定义值字段
queryMode:'local',//本地模式
forceSelection:true,//要求输入值必须在列表中
typeAhead:true,//允许自动选择匹配的剩余部分文本
value:'102600'//默认选择大兴
}

远程查询数据源
//创建数据类型
Ext.regModel('BookInfo',{
fields:[{name:'bookName'}]
});
//定义组合框中显示的数据源
var bookStore=Ext.create('Ext.data.Store',{
model:'BookInfo',
proxy:{
  type:'ajax',//Ext.data.Store
  url:'<%=basePath%>user/searchBook',
  reader:new Ext.data.ArrayReader({model:'BookInfo'}) //服务器端程序用于生成客户端组合框需求的数据格式:[['a'],['b'],['c']]
}
});
//远程数据源的组合框
{
xtype:'combo',
fieldLabel:'书籍列表',
listConfig:{
  loadingText:'正在加载书籍信息',
  emptyText:'未找到匹配值',
   maxHeight:60,
   width:300
},
allQuery:'allbook',//查询全部信息的查询字符串
minChars:3,
queryDelay:300,
queryParam:'searchbook',//查询的名字
triggerAction:'all',//单击触发按钮显示全部数据
store:bookStore,
displayField:'bookName',
valueField:'bookName',
queryMode:'remote'
}

后台代码:
//服务器端程序用于生成客户端组合框需求的数据格式:[['a'],['b'],['c']]
String  bookName=request.getParameter("searchbook");
String jav="['java编程思想'],['java入门'],['javascript程序设计']";
String cpp="['c++编程思想'],['java入门'],['c++程序设计']";
String php="['php编程思想'],['php入门'],['php程序设计']";
String  books="";
if(bookName.equals("allbook")){
books="["+jav+","+cpp+","+php+"]";
response.getWriter().write(books);
}else{
bookName=bookName.substring(0,3);
if(bookName.equals("jav")){
books="["+jav+"]";
}else  if(bookName.equals("cpp")){
books="["+cpp+"]";
}else  if(bookName.equals("php")){
books="["+php+"]";
}else{
books="[['没有数据']]";
}
response.getWriter().write(books);
}
Ext.form.field.Time 时间框:扩展自Ext.from.field.Picker组件,是一个带下拉选择框的时间输入字段,并具有自动的实践验证功能。
Eg://Ext.form.field.Time 时间选择框
{
fieldLabel:'时间选择框',
xtype:'timefield',
width:220,
labelSeparator:':',//分隔符
msgTarget:'side',//字段右边显示提示信息
autoFitErrors:false,//显示错误信息时是否自动调整字段组件宽度
maxValue:'18:00',//最大时间
maxText:'时间应小于{0}',//
minValue:'10:00',
minText:'时间应大于{0}',
pickerMaxHeight:70,//下拉列表的最大高度
increment:60,//时间间隔为60分钟
format:'G时i分s秒',//G:24 时计时法
invalidText:'时间格式无效'
}
Ext.form.field.Date日期选择框:是带下拉日期拾取器输入组件,并提供了自动的日期验证功能。
//Ext.from.field.Date
{
fieldLabel:'日期选择框',
xtype:'datefield',
labelSeparator:':',
msgTarget:'side',
autoFitErrors:false,
format:'Y年m月d日',
maxValue:'12/31/2088',//显示的最大日期
minValue:'01/01/2008',//显示的最小日期
disabledDates:["2013年06月05日","2013年06月04日"],//禁止选择的日期
disabledDatesText:'禁止选择该日期',
disabledDays:[0,6],//禁止选择星期日和星期六
disabledDaysText:'禁止以选择星期日和星期六',
width:220,
value:'06/07/2013'//显示的当前日期
}
注:1、disabledDates的日期格式必须与format中设置的日期格式相同,否则不起作用。
2、maxValue和minValue的格式必须是altFormats配置项中存在的日期格式,否则无效。
分享到:
评论

相关推荐

    extjs 微调控件,时间微调控件,微调,javascript 微调

    理解并掌握这些知识点,你就能有效地在ExtJS应用中实现和使用微调控件,为用户提供直观且易用的交互体验。通过实践和调试压缩包中的"spinner"文件,你可以深入理解其工作原理,并将这些知识应用到自己的项目中。

    extjs时间控件精确秒

    在EXTJS这个强大的JavaScript框架中,时间控件是开发者经常使用的组件之一,尤其在构建复杂的Web应用程序时。...在项目实践中,结合提供的压缩包文件,开发者可以进一步学习和实践EXTJS时间控件的秒级精确使用。

    extjs年份控件(只显示年,无月日时分秒)

    Extjs DateField控件 - 只选择年份(找了很久发现网上只有选择年月的控件,于是基于extjs年月控件设计了只选择年份的控件)

    extjs 年份控件和年月控件(使用看软件说明)

    修改extjs控件,支持只选择年月,或者只选择年。 只要设置format:“Y-m”,"Y"即可。 xtype:'monthfield' 因为extjs的bug(3月30如果选择2月将自动变成3月)。所以需要修改monthField中safeParse方法: else if ("Y-m...

    extjs网页控件开发

    在"extjs网页控件开发"中,我们主要关注的是使用ExtJS来创建高效的网页组件,如图表和多级联动下拉列表框。这些控件能够显著提升用户界面的交互性和用户体验。 首先,让我们深入探讨ExtJS中的图表控件。ExtJS提供了...

    EXTJS时间控件年月日时分秒

    这篇文档将深入探讨EXTJS中的时间控件及其使用方法。 首先,EXTJS时间控件的设计理念是为了提供用户友好的时间选择界面。通过这个控件,用户可以方便地选择一个精确到秒的时间值,这对于需要精确时间输入的应用场景...

    很好用的extjs年份控件

    自己新写的extjs年份控件,直接new Ext.ux.MyYear 即可使用

    extjs 时间控件

    在本篇文章中,我们将深入探讨ExtJS时间控件的使用、功能和配置。 1. **时间控件组件** ExtJS 提供了多种组件来处理时间输入,如`Ext.form.field.Time`和`Ext.picker.Time`。`TimeField`(`Ext.form.field.Time`)...

    ExtJS时间控件、IP输入控件【控件】

    在ExtJS中,时间控件通常由`Ext.picker.Time`类实现,它可以提供滚动选择小时、分钟和秒的功能。描述中提到的“点击上翻下翻精调时,分,秒”是指该控件可能包含上下箭头按钮,用户可以通过点击这些按钮来增加或减少...

    extjs日期+时间控件

    2. **日期时间控件(DateTime Field)**:在ExtJS中,日期和时间的输入通常通过`Ext.form.field.Date`和`Ext.form.field.Time`实现,但为了同时处理日期和时间,可以使用`Ext.picker.DateTime`或自定义组合控件。...

    extjs 常用控件的使用 table layout

    EXTJS 是一款强大的...掌握EXTJS的控件使用和Table Layout,可以帮助开发者高效地创建出专业且用户友好的前端应用。在实际开发过程中,应根据具体需求灵活运用EXTJS的组件和布局,以达到最佳的界面设计和交互效果。

    Extjs UI控件 for Asp.net3.5

    ExtJS UI控件是用于构建丰富、交互性强的Web应用程序的JavaScript库,它与ASP.NET 3.5结合...这个主题涵盖的内容包括但不限于JavaScript和.NET的交互、ExtJS控件的配置与使用、异步数据处理以及前端与后端的数据同步。

    ExtJs图片按钮控件

    ExtJs图片按钮控件是ExtJs框架中一种增强的按钮组件,它允许开发者在按钮上显示图片,以...结合`Ext.ux.ImageButton.js`的使用和`使用例子.txt`的参考,你可以轻松地将图片按钮集成到你的ExtJs应用中,提升用户体验。

    extjs ip控件

    extjs ip控件 extjs ip控件 extjs ip控件 extjs ip控件 extjs ip控件

    Extjs6 日期时间控件

    在EXTJS6中,日期时间控件是一种强大的用户界面组件,它将传统的日期选择器与时间选择器结合在一起,提供了一种便捷的方式来输入和编辑日期和时间数据。这个控件在许多应用程序中都非常实用,特别是在那些需要精确...

    ExtJs搜索控件、插件

    在ExtJS中,搜索控件和插件是提升用户体验、实现高效数据查找的关键元素。本篇将深入探讨这些知识点,以帮助你更好地理解和应用。 首先,我们要了解`SearchField.js`在这个上下文中的作用。通常,这是一个自定义...

    ExtJs DataGridView控件实例

    综上所述,"ExtJs DataGridView控件实例"涵盖了ExtJs的Grid组件使用,与AJAX、WCF服务和Linq的集成,以及各种功能的实现,包括分页、排序、提示、以及增删改查操作。这个实例为开发者提供了丰富的参考,帮助他们更好...

    extjs扩展年度控件,EXTJS里的时间控件的年度重写

    在EXTJS中,时间控件(Date Picker)是常见的元素,用于选择日期或时间。然而,有时开发人员可能需要对这些控件进行自定义,以满足特定业务需求,比如在本例中,我们需要扩展EXTJS的时间控件以实现“年度”选择的...

    ExtJS 日历控件 demo (modern版本)

    ExtJS6 modern版 日历控件的demo,可以 搜索文章 “ExtJS 日历Calendar 控件 使用”来参考使用

Global site tag (gtag.js) - Google Analytics