JQueryUI datepicker()初始化程序不能使用onload以外的事件

时间:2015-12-15 13:07:03

标签: jquery jquery-ui datepicker

绑定datepicker Widget时,在页面onload事件上执行它时,它无法从onclick事件中运行。

效果很好:

$()
{
   $('#StartDate').datepicker();    
};

不工作 - 当我点击文本框时抛出异常(Uncaught TypeError:$(...)。datepicker不是函数):

$("#StartDate").click(function (e)
{
    $('#StartDate').datepicker();    
});

我正在使用最新版本的JQuery和JQueryUI。

3 个答案:

答案 0 :(得分:1)

你必须这样做

$("#StartDate").click(function (e)
{
   //this will rebind datepicker
   $(this).removeClass('hasDatepicker').datepicker();
});

答案 1 :(得分:0)

这可能是由脚本引用引起的,请确保所有引用的脚本都位于剃刀视图的开头。因此可以正确加载脚本:

在您的视图之上,尝试添加,使其与脚本版本对应:

<link href="~/Content/themes/base/datepicker.css" rel="stylesheet" />
<link href="~/Content/jquery-ui.css" rel="stylesheet" />
<script src="~/Scripts/jquery-ui-1.11.4.min.js"></script>

然后在buttom处添加:

<script type="text/javascript">
    $(function () {
            $("#StartDate").datepicker({
                dateFormat: 'yy/mm/dd',

            }).val()
        });
</script>

答案 2 :(得分:0)

如果我没错,你基本上想要点击文本框(#StartDate)触发datepicker,试试这个,

$("#StartDate").datepicker({
            showOn: "button"

        });

您需要将showon属性添加到&#34;按钮&#34;对于每个元素。