2008-11-04 5 views
1

Как мы можем передать нажатие клавиши в asp.netОбработка событий в ASP.net

+0

Возможно, некоторые подробности будут приятными, например, зачем вам это нужно, какова должна быть цель ключевого нажатия? – Biri 2008-11-04 10:43:40

ответ

0

Это зависит от вашей ситуации. В большинстве случаев вам придется обрабатывать событие с клавиатуры в javascript и каким-то образом распространять это событие на сервер. Рассмотрите возможность пересмотра вашего вопроса, чтобы добавить больше фона.

1

Вам необходимо обработать эту клиентскую сторону, в Javascript, затем либо отправить назад страницу, либо вызвать метод Ajax, чтобы что-то сделать.

Например, следующий код переопределяет текстовое поле, так что Enter не представляет его:

<asp:TextBox 
    runat="server" 
    onKeyPress="if (event.keyCode == 13) return false;" /> 

Это очень простой вызов - если вы планируете делать что-нибудь сделать более сложный чек выделенный Javascript таких как JQuery.

1

Вы можете справиться с этим на стороне клиента с JavaScript:

myTextBox.Attributes["OnKeyPress"] = "javascript function call;"; 

Вы можете использовать OnKeyUp для лучшей совместимости браузера и обработки.

Вы также можете обрабатывать что-то similair на стороне сервера: только

<asp:TextBox runat="server" ID="ole" ontextchanged="ole_TextChanged" AutoPostBack="true"></asp:TextBox> 

protected void ole_TextChanged(object sender, EventArgs e) 
{ 
    // Do stuff 
} 

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

Решение в любом случае подходит для работы с javascript. Это может быть простой javascript или AJAX.

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