使用下拉式asp.net启用/禁用datepicker

时间:2015-03-17 13:24:19

标签: javascript c# jquery asp.net datepicker

我有一个用于在文本框中选择数据数据类型的下拉列表。下拉选项类似于整数,小数,字符串,日期。

一切都运行正常,但有一件事是当到目前为止选择下拉列表时,无法在文本框中输入日期选择器。

尝试了类似但未能实现的目标

$(function () {
            $(".date1").datepicker({
                changeMonth: true,
                changeYear: true,
                numberOfMonths: 1

            });
        });

$("#<%=ddlDataType.ClientID %>").change(function () {
            if ($('#<%=ddlDataType.ClientID %> option:selected').text().toLowerCase() == "date") {
                $("#<%=txtDefaultValue.ClientID%>").prop("class", "date1");
            }
            else {
                $("#<%=txtDefaultValue.ClientID%>").prop("class", "");
            }
        });

实现这一目标的可行方法是什么。

2 个答案:

答案 0 :(得分:1)

如果你想删除它(保持启用以用于其他目的),那么你可以使用destroy方法

$("#<%=txtDefaultValue.ClientID%>").datepicker("destroy");

否则

您可以在ddlDataType drowndown list的更改事件中设置选项启用和禁用。

$("#<%=txtDefaultValue.ClientID%>").datepicker('enable');

$("#<%=txtDefaultValue.ClientID%>").datepicker('disable');

替代方案您也可以设置选项以启用禁用datepicker

//To enable

$("#<%=txtDefaultValue.ClientID%>").datepicker( "option", "disabled", false );

//To disable

$("#<%=txtDefaultValue.ClientID%>").datepicker( "option", "disabled", true );

答案 1 :(得分:0)

如果您只想显示或隐藏日期选择器,可以尝试使用此代码(假设您使用的是jQuery)。

    if ($('#<%=ddlDataType.ClientID %> option:selected').text().toLowerCase() == "date") 
    {
              $(".date1").css("display", "block");
    }
    else {
              $(".date1").css("display", "none");
    }