使用JQuery检测文本框更改

时间:2013-09-19 20:34:18

标签: jquery asp.net vb.net ajaxcontroltoolkit

使用VS2012在VB中创建Web应用程序,我遇到以下问题:

我创建了一个asp:CalendarExtender,它填充了一个asp:TextBox。此文本框分配了属性Enabled =“False”。一旦调用了asp:CalendarExtender,它将以“Sept 1 2000”格式在TextBox中放置一个日期。

我现在想用JQuery来检测这个变化。我遇到过许多依赖于使用键盘或模糊进行文本更改的示例,但这些都不起作用。我甚至在按钮上附加了一个JQuery事件,触发了日历弹出窗口,删除了asp:TextBox的'Enabled = False'属性[我的想法是删除启用的属性,允许JQuery检测到粘贴更改,然后再次禁用文本框]

感激地收到任何想法或建议。

1 个答案:

答案 0 :(得分:1)

你在TextBox上需要Enabled="False",还是ReadOnly="True"就足够了?因为如果未启用TextBox,则单击TextBox时不会弹出CalendarExtender。

你可以这样做:

<script type="text/javascript">
  function alertChanged() {
    alert("Text changed.");
  }
</script>

使用:

<asp:TextBox ID="tbxCalTest" runat="server" ReadOnly="true"></asp:TextBox>
<ajaxToolkit:CalendarExtender ID="calendarTest" runat="server" TargetControlID="tbxCalTest"
  OnClientDateSelectionChanged="alertChanged"></ajaxToolkit:CalendarExtender>