0

我在 asp.net 页面中有一个 ajax tabcontainer。当单击 Ajax tabcontainer 中的文本框时,我正在使用 jquery 弹出日历。

当文本框在 ajax tabcontainer 之外时,它工作正常。但是,当我将此文本框放入 ajax 选项卡容器中时,用于 datepicket 的 Jquery 无法弹出日历。我该如何解决这个问题?

这是我用来将日期选择器绑定到我的文本框的代码。

  $(function () {
            var d = new Date();
            var curr_year = d.getFullYear();
            $('#txtDob').live('load', function () {
                $("#txtDob").datepicker(
       { yearRange: '1900:' + curr_year, changeMonth: true, changeYear: true, maxDate: '0' });

            });
            $('#txtDOD').live('load', function () {
                $("#txtDOD").datepicker(
       { yearRange: '1900:' + curr_year, changeMonth: true, changeYear: true, maxDate: '0' });
            });
        });
4

2 回答 2

0

检查您的 html 并检查 ClientID。

一个好的做法是始终在 javascript 中使用客户端 ID。

像这样:

 $('#<%= txtDob.ClientID %>')
于 2013-03-11T10:23:24.997 回答
0

当您使用动态控件时,您可以做的一件事是将 txtDob 控件的 ClientID 模式设置为 AutoID

 <asp:TextBox ID="txtDob" runat="server" CssClass="hasDatePicker" ClientIDMode="AutoID"/>

ClientID 值是通过将每个父命名容器的 ID 值与控件的 ID 值连接起来生成的。在呈现控件的多个实例的数据绑定方案中,将在控件的 ID 值前面插入一个递增值。每个段由下划线字符 (_) 分隔

于 2016-01-07T08:33:45.950 回答