创建一个可重用的代码,用于根据另一个文本框值自动完成日期文本框

时间:2014-12-31 12:19:28

标签: c# asp.net

我的应用程序中有很多日期字段,我需要根据第一个文本框中输入的值自动完成第二个日期文本框。示例:

<td class="mytddata">
    <asp:TextBox CssClass="mytextbox" runat="server" ID="txtYellowCreationDate" Text='<%# Bind("YellowCreationDate","{0:dd/MM/yyyy}") %>' TextMode="Date" OnTextChanged="UpdateExpirationTextBox"></asp:TextBox>
 </td>
<td class="mytddata">
   <asp:TextBox CssClass="mytextbox" runat="server" ID="txtYellowExpirationDate" Text='<%# Bind("YellowExpirationDate","{0:dd/MM/yyyy}") %>' TextMode="Date"></asp:TextBox>
 </td>

在这种情况下,我自动填充过期文本框的方式是使用“OnTextChanged”事件并在后面的代码中:

protected void UpdateExpirationTextBox ()
{
     txtYellowExpirationDate.Text=myCal.AddYears((DateTime)txtYellowCreationDate.Text,2).ToString();
}

我正在寻找编写此代码一次的方法,并将其重用于需要此类自动完成的其他情况。我想创建一个包含这两个文本框的用户控件,并在我的页面中使用它,但是我无法将主页中的字段值“绑定”到用户控件中的字段,但我会必须写很多代码来做到这一点。

要实现此目的的任何想法或建议,还是每次需要此功能时都必须重写代码?

1 个答案:

答案 0 :(得分:0)

将代码编写为javascript函数,并在需要时在整个项目中引用脚本。如果所有文本框自动填充都需要共享相同的信息,请将需要在文本框之间共享的信息传递回服务器(如果需要进行Ajax调用的良好候选者&#34;即时#34;)。