From d14629735648fb10403e38eac2b764ce6adf56c9 Mon Sep 17 00:00:00 2001 From: Karl Kirch Date: Tue, 9 Aug 2011 09:55:50 -0400 Subject: Datepicker: Added ability to stop datepicker from beforeShow. Fixes #7602 - Ability to stop datepicker from appearing with beforeShow event handler. --- ui/jquery.ui.datepicker.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'ui') diff --git a/ui/jquery.ui.datepicker.js b/ui/jquery.ui.datepicker.js index ade580220..3b8caa59b 100644 --- a/ui/jquery.ui.datepicker.js +++ b/ui/jquery.ui.datepicker.js @@ -625,6 +625,7 @@ $.extend(Datepicker.prototype, { }, /* Pop-up the date picker for a given input field. + If false returned from beforeShow event handler do not show. @param input element - the input field attached to the date picker or event - if triggered by focus */ _showDatepicker: function(input) { @@ -641,7 +642,12 @@ $.extend(Datepicker.prototype, { $.datepicker._curInst.dpDiv.stop(true, true); } var beforeShow = $.datepicker._get(inst, 'beforeShow'); - extendRemove(inst.settings, (beforeShow ? beforeShow.apply(input, [input, inst]) : {})); + var beforeShowSettings = beforeShow ? beforeShow.apply(input, [input, inst]) : {}; + if(beforeShowSettings === false){ + //false + return; + } + extendRemove(inst.settings, beforeShowSettings); inst.lastVal = null; $.datepicker._lastInput = input; $.datepicker._setDateFromField(inst); -- cgit v1.2.3