Событие OnKeyPress не вызывается для ListBox - PullRequest
0 голосов
/ 26 августа 2011

Я пытаюсь заставить событие OnKeyPress работать для ASP.NET ListBox, который отображает себя как элемент SELECT в HTML.После некоторого поиска, пара сайтов, кажется, предполагает, что он поддерживается, но событие, похоже, просто не вызывает и не вызывает мой код JavaScript.Кажется, он срабатывает для другого поля редактирования на той же странице, но не делает этого для элемента SELECT.

Я хочу использовать событие OnKeyPress, чтобы я мог получить код ascii, где как OnKeyDown и OnKeyUp возвращаетвместо этого код ключа.

В настоящее время я использую IE7, и мне было интересно, поддерживается ли событие OnKeyPress элементами SELECT?

Вот как я делаю это в файле aspx:

    <asp:ListBox ID="myListBox" runat="server" Width="306px" SelectionMode="Single"
      Rows="15" CssClass="myListBoxStyle" DataSourceID="myDataSource"
      onchange="myListBoxOnChange(this)"
      onkeypress="myListBoxOnKeyPress(this)" />

Ответы [ 2 ]

0 голосов
/ 27 августа 2011

Мой плохой.Похоже, что в ASPX-коде моего элемента ListBox было onkeydown="return false", что отменило событие onkeypress.

0 голосов
/ 26 августа 2011

В своем коде (например, page_load) укажите

yourSelectList.Attributes.Add("onkeypress", "YourJavascriptMethodCallHere()");

, это вызовет JavaScript на стороне клиента.Если вы хотите обработать ключ на стороне сервера (добавлено для дополнительной информации), проверьте: http://forums.asp.net/t/1281277.aspx/1

DropDownList1.Attributes.Add("onkeypress", Page.GetPostBackEventReference(DropDownList1,"onkeypress"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...