2013-09-19 2 views
0

Использование VS2012 для создания веб-приложений в VB, у меня есть следующий вопрос:Обнаружение Textbox изменения Использование JQuery

я создаю жерех: CalendarExtender, что заполняющий жерех: TextBox. В этом текстовом поле назначено свойство Enabled = "False". Как только asp: CalendarExtender будет вызван, он поместит дату в TextBox в формате «1 сентября 2000».

Теперь я хочу использовать JQuery для обнаружения этого изменения. Я столкнулся со многими примерами, которые полагаются на изменение текста с помощью клавиатуры или Blur, но ни одна из них не работает. Я даже привязал событие JQuery к кнопке, которая запускает всплывающее окно «Календарь», которое удаляет свойство «Enabled = False» asp: TextBox. [Мой ход мысли заключался в том, чтобы удалить свойство enabled, разрешить JQuery обнаруживать вставьте изменения, затем снова отключите текстовое поле]

Любые идеи или предложения с благодарностью получены.

ответ

1

Вам нужно Enabled="False" на TextBox, или ReadOnly="True" хватает? Поскольку CalendarExtender не открывается, когда вы нажимаете TextBox, если TextBox не включен.

Вы могли бы сделать что-то вроде этого:

<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> 
+0

Спасибо timbck2. Похоже, что ключом к этой проблеме был параметр 'OnClientDateSelectionChanged'. Не имеет значения, имели ли asp: TextBox параметры «Enabled =« False »или« ReadOnly = »true», поскольку я использую кнопку для вызова элемента управления CalendarExtender, но тем не менее полезный совет. – normality2000

Смежные вопросы