我正在尝试在内容页面的文本框中显示javascript日期时间选择器,该文本框是从母版页派生的,但日期时间选择器未显示。
这是我的内容页面:
<link rel="stylesheet" href="Datepicker.css">
<script src="https://code.jquery.com/jquery.js"></script>
<script src="Datepicker.js"></script>
<script>
$(document).ready(function() {
$('#dp').datepicker();
});
</script>
<script>
$(document).ready(function() {
$('#dp1').datepicker();
});
</script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<asp:Label ID="Label1" runat="server" Text="From"></asp:Label>
<input id="dp" type="text" runat="server"/>
<asp:Label ID="Label2" runat="server" Text="To"></asp:Label>
<input id="dp1" type="text" runat="server" />
<asp:Button ID="Button1" runat="server" Text="Search" onclick="Button1_Click" />
<asp:GridView ID="gvdetails" runat="server">
</asp:GridView>
</asp:Content>
注意:这在没有母版页的情况下有效,但是当我在内容页面中添加它时,它不起作用。请帮助
答案 0 :(得分:2)
当通过IIS提供ASP时,所有runat="server"
元素都会被赋予唯一的名称。
要查找此名称,请使用<%= %>
语法和对象的ClientID
。在你的情况下,它将是:
$('#<%=dp1.ClientID%>').datepicker();
或者,您可以将元素设置为使用静态名称。
<input id="dp1" type="text" runat="server" ClientIDMode="Static" />
(但不要两者兼顾)
答案 1 :(得分:0)
开箱即用。
使其简单配对 - 使用Html5中的DateTime
<form>
Birthday (date and time):
<input type="datetime" name="bdaytime">
</form>