我在aspx页面上使用带有两个文本框的datepicker插件。当我点击提交时,数据会保存在数据库中,但现在如果我再次尝试更新日期,则datepicker在页面加载后不起作用。我正在使用以下代码。
<asp:TextBox ID="txtMovingDate" runat="server"
CssClass="TextBox datepicker" TabIndex="19"></asp:TextBox>
jQuery(function() {
jQuery(".datepicker").datepicker(
{ dateFormat: 'mm/dd/yy', timeFormat: ' hh:ii:ss',
changeMonth: true, changeYear: true });
请帮帮我。谢谢。
答案 0 :(得分:1)
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(function(){
//你需要在这里复制你的jquery datapicker函数// in 为了在回发后使用它
});
答案 1 :(得分:0)
如果你在Updatepanel中有一个文本框,为了让事情更清楚,这里有一个我有的工作代码示例(在阅读了几个不同的答案后推断出来)。
在你的&lt;头&gt;标记如下:
<script type="text/javascript">
$(document).ready(function () {
$(".startDatepicker").datepicker({
dateFormat: 'dd/mm/yy',
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 2,
onClose: function (selectedDate) {
$(".endDatepicker").datepicker "option", "minDate", selectedDate);
}
});
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function EndRequestHandler(sender, args) {
$(".startDatepicker").datepicker({
dateFormat: 'dd/mm/yy',
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 2,
onClose: function (selectedDate) {
$(".endDatepicker").datepicker("option", "minDate", selectedDate);
}
});
}
});
</script>
然后在你&lt;身体&gt;代码放了这个:
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="floatLeft"><asp:TextBox ID="dateFromTxtBox" CssClass="startDatepicker"
runat="server" Text="02/12/2013" ToolTip="enter a time either in 12 hour clock or 24 hour clock"
Width="74px" DataFormatString="{0:d}" BorderStyle="Inset"></asp:TextBox>
</div>
</ContentTemplate>
</asp:UpdatePanel>
添加结束日期或时间选择器只需复制并粘贴每个Jquery语句的新实例(但不是$(doc).ready(){} ..或函数EndRequestHandler(sender,args){ },你只需要脚本中的每一个)加上&lt; asp:textbox ... statement。
希望这会有所帮助