我真的卡住了,我已经尝试了所有其他示例,但没有任何效果。我是 ASP.NET 的新手,但学得很快!
我想使用 jQuery 日期选择器并插入这个脚本
<script>
$(document).ready(function () {
$(function () {
$("#" + '<%=txtDOB.ClientID%>').datepicker();
});
});
</script>
而我在aspx页面上的控件是
<asp:TextBox ID="txtDOB" CssClass="form-control" runat="server"></asp:TextBox>
一旦我关闭服务器标记 %>
,txtDOB 控件下就会出现红线并显示:
txtDOB is not declared. It may be inaccessible due to its protection level.
我已经在后面的代码中公开了这个类,但没有任何区别。我还将脚本移到了页面底部。如果我将 asp 文本框更改为 HTML 输入,它工作正常。
最佳答案
如您所用,它将与 ASP.NET TextBox 一起正常工作。因此,它必须与您的控件所在的位置有关。例如,如果它在 Repeater 或 Grid 中,您将不能像那样直接使用它的 ID,因为框架会在运行时为每一行生成唯一的 ID。
创建一个页面上没有其他控件的简单 Web 表单,您会发现它可以正常工作。
关于javascript - 未声明控件。由于其保护级别,它可能无法访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25338521/