Skip to content

Commit 70c676c

Browse files
Changed to only set defaultValue on focus to allow user to unset the input value
1 parent 9b89846 commit 70c676c

File tree

1 file changed

+22
-16
lines changed

1 file changed

+22
-16
lines changed

jquery-ui-timepicker-addon.js

Lines changed: 22 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -231,6 +231,10 @@ $.extend(Timepicker.prototype, {
231231
if(tp_inst._defaults.maxDateTime !== undefined && tp_inst._defaults.maxDateTime instanceof Date) {
232232
tp_inst._defaults.maxDate = new Date(tp_inst._defaults.maxDateTime.getTime());
233233
}
234+
tp_inst.$input.bind('focus', function() {
235+
tp_inst._onFocus();
236+
});
237+
234238
return tp_inst;
235239
},
236240

@@ -743,22 +747,6 @@ $.extend(Timepicker.prototype, {
743747
// on time change is also called when the time is updated in the text field
744748
//########################################################################
745749
_onTimeChange: function() {
746-
if( !this.$input.val() && this._defaults.defaultValue ) {
747-
this.$input.val(this._defaults.defaultValue);
748-
var inst = $.datepicker._getInst(this.$input.get(0)),
749-
tp_inst = $.datepicker._get(inst, 'timepicker');
750-
if (tp_inst) {
751-
if (tp_inst._defaults.timeOnly && (inst.input.val() != inst.lastVal)) {
752-
try {
753-
$.datepicker._updateDatepicker(inst);
754-
}
755-
catch (err) {
756-
$.datepicker.log(err);
757-
}
758-
}
759-
}
760-
}
761-
762750
var hour = (this.hour_slider) ? this.hour_slider.slider('value') : false,
763751
minute = (this.minute_slider) ? this.minute_slider.slider('value') : false,
764752
second = (this.second_slider) ? this.second_slider.slider('value') : false,
@@ -872,6 +860,24 @@ $.extend(Timepicker.prototype, {
872860
}
873861

874862
this.$input.trigger("change");
863+
},
864+
865+
_onFocus: function() {
866+
if( !this.$input.val() && this._defaults.defaultValue ) {
867+
this.$input.val(this._defaults.defaultValue);
868+
var inst = $.datepicker._getInst(this.$input.get(0)),
869+
tp_inst = $.datepicker._get(inst, 'timepicker');
870+
if (tp_inst) {
871+
if (tp_inst._defaults.timeOnly && (inst.input.val() != inst.lastVal)) {
872+
try {
873+
$.datepicker._updateDatepicker(inst);
874+
}
875+
catch (err) {
876+
$.datepicker.log(err);
877+
}
878+
}
879+
}
880+
}
875881
}
876882

877883
});

0 commit comments

Comments
 (0)