C# 如何在asp.net中处理按键或向下键事件?

C# 如何在asp.net中处理按键或向下键事件?,c#,javascript,asp.net,sql-server-2005,events,C#,Javascript,Asp.net,Sql Server 2005,Events,System.Web.UI.WebControls.TextBox中没有KeyPress或KeyDown事件,因此一种方法是使用Java脚本,但希望在这些事件中触发一些Sql查询。可以从JavaScript执行Sql查询吗?如果没有,我该怎么做 如果需要捕获关键事件,则需要使用Javascript 然后可以使用ajax将这些密钥发送到服务器并执行操作 我的猜测是,您正在考虑与Google Suggest类似的内容。如果您需要捕获关键事件,则需要使用Javascript 然后可以使用ajax将这些

System.Web.UI.WebControls.TextBox
中没有
KeyPress
KeyDown
事件,因此一种方法是使用Java脚本,但希望在这些事件中触发一些Sql查询。可以从JavaScript执行Sql查询吗?如果没有,我该怎么做

如果需要捕获关键事件,则需要使用Javascript

然后可以使用ajax将这些密钥发送到服务器并执行操作


我的猜测是,您正在考虑与Google Suggest类似的内容。

如果您需要捕获关键事件,则需要使用Javascript

然后可以使用ajax将这些密钥发送到服务器并执行操作


我的猜测是,您正在考虑与Google Suggest类似的内容。

不,您不能从javascript执行SQL。最好使用jquery之类的工具,将事件连接到.change()(或类似的工具),然后发出ajax请求以执行sql查询。textbox按键或向下键的服务器端事件(不存在)每次都会提交页面,这对用户来说根本不起作用。如果您想显示一些信息,可以查看jquery ui autocomplete。不,您不能从javascript执行SQL。最好使用jquery之类的工具,将事件连接到.change()(或类似的工具),然后发出ajax请求以执行sql查询。textbox按键或向下键的服务器端事件(不存在)每次都会提交页面,这对用户来说根本不起作用。如果希望显示一些信息,可以查看jQueryUIAutoComplete

You can handle the key press event in the given way
但您不能在这些事件中触发SQL查询。

<%@ 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>

受保护的无效页面加载(对象发送方、事件参数e)
{
如果(!Page.IsPostBack)
{
标签1.Text=“开始”;
}
TextBox1.Attributes.Add(“onkeyup”、“rewriteLabel()”);
}
函数重写标签()
{
TextBox1.Text=Label1.Text;
}
测试


但您不能在这些事件中触发SQL查询。

<%@ 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>

受保护的无效页面加载(对象发送方、事件参数e)
{
如果(!Page.IsPostBack)
{
标签1.Text=“开始”;
}
TextBox1.Attributes.Add(“onkeyup”、“rewriteLabel()”);
}
函数重写标签()
{
TextBox1.Text=Label1.Text;
}
测试



要触发事件,必须发布页面,我相信您不希望每次按键都出现这种情况。ajax是否适用于此?我还没有使用过ajax,但我想我可以学习它。要启动事件,必须发布页面,我相信你不希望每次按键都使用ajax。ajax是否适用于此?我还没有使用过ajax,但我想我可以为此学习它。