在使用sitemaster的webform中,我无法使用pikaday的功能,但是在我没有使用sitemaster进行测试的新webform中,我可以使用该功能。我该如何解决这些问题?
使用sitemaster:
<asp:Content ID="Content3" ContentPlaceHolderID="MainContent" runat="server">
<link href="css/pikaday.css" rel="stylesheet" />
<link href="css/theme.css" rel="stylesheet" />
<link href="css/site.css" rel="stylesheet" />
<script src="moment.js"></script>
<script src="pikaday.js"></script>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<script>
var picker = new Pikaday({
field: document.getElementById('TextBox1'),
firstDay: 1,
format: 'YYYY-MM-DD',
minDate: new Date('2015-01-01'),
maxDate: new Date('2050-12-31'),
yearRange: [2015, 2050],
numberOfMonths: 1,
});
</script> </asp:Content>
没有网站管理员:
<body>
<form id="form1" runat="server">
<div>
<link href="css/pikaday.css" rel="stylesheet" />
<link href="css/site.css" rel="stylesheet" />
<link href="css/theme.css" rel="stylesheet" />
<script src="moment.js"></script>
<script src="pikaday.js"></script>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<script>
var picker = new Pikaday({
field: document.getElementById('TextBox1'),
firstDay: 1,
format: 'YYYY-MM-DD',
minDate: new Date('2015-01-01'),
maxDate: new Date('2050-12-31'),
yearRange: [2015, 2050],
numberOfMonths: 1,
});
</script>
</div>
</form> </body>
答案 0 :(得分:0)
我有完全相同的问题,经过研究后我发现了以下内容:似乎有一个css属性需要在pikaday.css文件中更改,特别是在第35行:
.pika-single.is-bound{position: absolute !important}
只需在“position:absolute”语句旁边添加!important。
同样在您的javascript中,您必须像这样引用文本框:
var $txtDate = $("[id$=Client_Id_Generated_by_Aspx_page]")
根据“$ =”运算符,此选择器将在最后找到您在IDE(例如Visual Studio)上的ASPX页面上分配的文本框ID的引用。这适用于.Net Frameworks 3.5或更低,因为在.Net Framework 4.0或更高版本上,有一种方法可以在服务器端分配ClientID,以便您在frontEnd上使用它(例如.js文件)。
我希望这会对你有所帮助。
干杯...