12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- module.exports = {
- name: 'datepicker',
- methods: {
- // @extend
- _init: function() {
- this._buildDatepicker();
- },
- _buildDatepicker: function() {
- var $datepicker = this.$form.find('input.datepicker');
- // Always show datepicker below the input
- if (jQuery.ui) {
- $.datepicker._checkOffset = function(a,b,c){ return b };
- }
- if (jQuery.ui && $datepicker.length) {
- $datepicker.each(function() {
- $(this).datepicker({
- beforeShow: function(input) {
- $(input).addClass('open');
- },
- onChangeMonthYear: function() {
- // Hack to fix IE9 not resizing
- var $this = $(this)
- , width = $this.outerWidth(); // cache first!
- setTimeout(function() {
- $this.datepicker('widget').css('width', width);
- }, 1);
- },
- onClose: function() {
- $(this).removeClass('open');
- }
- });
- });
- // Adjust width
- $datepicker.on('focus keyup', function() {
- var t = $(this), w = t.outerWidth();
- t.datepicker('widget').css('width', w);
- });
- }
- }
- }
- };
|