我們都知道ExtJs有日期組件DateField,但直到ExtJs 5.0版本該日期組件也只能選擇日期,不能選擇時間(具體到時、分、秒),而實際工作中又常常會有需要日期和時間同時選擇的需求,我們只能自己擴展了,網上也有一些擴展好的現成組件,要么是早期版本的,ExtJs5.0版本的無法用,要么就是測試不充分,代碼拿過來也用不了。於是筆者就只能自己動手了。先來看一下完成后的效果圖:

先說一下思路:
我們需要如上圖這樣的組件,首先我們得有一個能夠設置時、分、秒的組件,我們取名TimePickerField;然后將這個TimePickerField實例化到DatePicker上,當然我們不能直接在DatePicker源碼上去改,所以我們就需要繼承DatePicker擴展出另一個組件,取名DateTimePicker;而最終要實現的DateTimeField就要使用到這個DateTimePicker,同理,DateTimeField需要繼承Ext.form.field.Date來做擴展。
從上面的思路中我們可以知道要完成這樣一個擴展組件,至少需要三個文件:
1、TimePickerField.js

2、DateTimePicker.js

3、DateTimeField.js

以上是大致的擴展思路及擴展組件的繼承關系,需要獲取完整源碼請點擊這里。
