同步Ajax Toolkit Calendar Extender

时间:2009-01-30 17:59:12

标签: asp.net asp.net-ajax

我有两个Ajax Toolkit日历扩展程序。其中一个是开始日期,另一个是相应的结束日期。我想要发生的是当在开始日历中选择日期时,结束日历将跳转到该日期。这听起来很简单,但我一直很难实现它。

有人让我摆脱了痛苦......实现这个目标的方法是什么?

1 个答案:

答案 0 :(得分:2)

在这里,你为我工作了

<asp:TextBox runat="server" ID="txt1" OnTextChanged="txt1_TextChanged" AutoPostBack="true"></asp:TextBox>
<ajaxToolkit:CalendarExtender runat="server" ID="cal1" TargetControlID="txt1"></ajaxToolkit:CalendarExtender>
<asp:TextBox runat="server" ID="txt2"></asp:TextBox>
<ajaxToolkit:CalendarExtender runat="server" ID="cal2" TargetControlID="txt2"></ajaxToolkit:CalendarExtender>

protected void txt1_TextChanged(object sender, EventArgs e)
{
    cal2.SelectedDate = Convert.ToDateTime(txt1.Text);
}

或者你可以通过javascript做到这一点我建议使用jquery虽然找到文本框而不是使用直接的javascript

<asp:TextBox runat="server" ID="txt1" onchange="SetEndDate()"></asp:TextBox>
<ajaxToolkit:CalendarExtender runat="server" ID="cal1" TargetControlID="txt1"></ajaxToolkit:CalendarExtender>
<asp:TextBox runat="server" ID="txt2"></asp:TextBox>
<ajaxToolkit:CalendarExtender runat="server" ID="cal2" TargetControlID="txt2"></ajaxToolkit:CalendarExtender>

  <script type="text/javascript">
        function SetEndDate()
        {
            var txt1 = document.getElementById("txt1");
            var txt2 = document.getElementById("txt2");

            txt2.value = txt1.value
        }
    </script>