如何验证选择器以选择特定范围内的日期

时间:2015-03-24 14:55:28

标签: jquery asp.net

我有这两个控件:

<div class="control-group">
                                <label class="control-label">Batch Date:</label>
                                <div class="controls with-tooltip">
                                    <asp:TextBox runat="server" CssClass="mydate input-small" ID="BatchDate_txt" />
                                </div>
                            </div>

                            <div class="control-group">
                                <label class="control-label">Claim Month:</label>
                                <div class="controls with-tooltip">
                                    <asp:TextBox runat="server" CssClass="mydatemonth input-small" ID="ClaimMonth_txt" />
                                </div>
                            </div>

我想要实现的目标是:当您选择批日期时,索赔月份应该允许您仅在索赔月份的下一个90天内进行选择。 注意:索赔月份日期选择器仅显示月份。

我不知道我是否足够明确,但我该怎么做呢?

1 个答案:

答案 0 :(得分:0)

我试图完全理解你的要求,即使你的目标对我来说有点奇怪。

无论如何,当jquery将日期附加到元素时,我经常使用onShowDay之前的内置选项:

 $('#ClaimMonth_txt').datepicker({..., beforeShowDay : fnCheckDate });

和js函数可以类似

 var fnCheckDate = function(day) {
     var maxDate = add90Days(convertToDate($('#BatchDate_txt').val()));
     return [day <= maxDate, '', ''];
 } 

每天应调用此函数,这样您可以根据需要逐个禁用或启用它们,将true或false设置为返回数组中的第一个值。

我的疑问是关于 声明月份datepicker仅显示月份 的声明。那么,仅使用有效月份而不是日期选择器来填充组合是不是最简单的呢?

无论如何,可以在previous question中找到另一个解决方案,解决方案包括在关注日期选择器时禁用月份选择箭头。逻辑可以与之前的逻辑相同。

对不起,如果我误解了什么。