Текстовое поле asp.net - событие textChanged на стороне клиента не срабатывает

Я хочу, чтобы мое текстовое поле запускало событие на стороне клиента (JS) textChanged при изменении текста внутри него.

я прочитал много постов об этом. большинство из них говорят о событии кода программной части, а те, которые говорят о стороне клиента, говорят о добавлении атрибута onchange:

<asp:TextBox runat="server" ID="TextBox1" onchange="javascript: ontextchanged();"></asp:TextBox>

но это событие срабатывает только тогда, когда я теряю фокус на текстовом поле.

какое решение для этого? как я могу запускать JS-функцию каждый раз, когда текст внутри текстового поля изменяется?


person Rodniko    schedule 21.11.2011    source источник
comment
Лично я решил эту проблему, используя таймер на стороне клиента, который время от времени опрашивает текстовое поле на предмет изменений и вызывает функцию ontextchanged(), если она была изменена.   -  person Uwe Keim    schedule 21.11.2011


Ответы (2)


Вместо этого используйте onkeyup или onkeydown.

Затем эта функция запустит функцию, когда вы введете или нажмете текстовое поле. Затем вы также можете определить ключевой код события и запретить функцию, если вы не хотите, чтобы она запускалась для определенных клавиш.

person Tim B James    schedule 21.11.2011

Попробуйте это http://www.zurb.com/playground/jquery-text-change-custom-event

person coder    schedule 21.11.2011