Как мне обрабатывать события KeyPress или KeyDown в asp.net? - PullRequest
0 голосов
/ 21 июня 2011
События

KeyPress или KeyDown недоступны в System.Web.UI.WebControls.TextBox, поэтому один из способов сделать это - использовать Java-Scripts, но при этом нужно запускать некоторые запросы Sql.Можно ли выполнить Sql-запросы из JavaScript?если нет то как мне это сделать?

Ответы [ 3 ]

5 голосов
/ 21 июня 2011

Нет, вы не можете выполнить SQL из JavaScript. Лучше всего использовать что-то вроде jquery и подключить событие к .change () (или что-то похожее), а затем сделать ajax-запрос для выполнения SQL-запроса. Событие на стороне сервера (которое не существует) для нажатия клавиши ввода текста или нажатия клавиши вниз отправит страницу каждый раз, и это просто не будет работать для пользователя. Вы можете посмотреть автозаполнение jquery ui, если хотите отобразить некоторую информацию

2 голосов
/ 21 июня 2011

Если вам нужно захватить ключевые события, вам нужно использовать Javascript.

Вы можете использовать ajax для отправки этих ключей на сервер и выполнения действий.

Полагаю, вы думаете о чем-то вроде Google Suggest.

0 голосов
/ 21 июня 2011
You can handel the key press event in this way :    

<%@ Page Language="C#" %>
<script runat="server">

protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Label1.Text = "Start";
}
TextBox1.Attributes.Add("onkeyup", "rewriteLabel()");
}
</script>

<script type="text/javascript">

function rewriteLabel(){
TextBox1.Text = Label1.text;
}

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head >
<title >test</title>
</head>
<body>
<form id="form1" runat="server">
<br />
<asp:TextBox ID="TextBox1" runat="server" /><br />
<asp:Label ID="Label1" Runat="server" BorderWidth="1px" />
</form>
</body>
</html>

Но вы не можете запускать SQL-запросы в этих событиях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...