Asp.net 如何在文本框或输入控件(如谷歌搜索下拉结果)中填充sql查询结果
我正在为一个朋友做一个小项目。任何帮助都会很好。提前谢谢你 我有一个文本框,但是我也可以使用html输入控件 和谷歌栏一样,你可以输入一个字母a,它会返回任何与字母a匹配的描述。它将在inut控件下显示匹配值,与goodle搜索栏相同Asp.net 如何在文本框或输入控件(如谷歌搜索下拉结果)中填充sql查询结果,asp.net,sql-server,Asp.net,Sql Server,我正在为一个朋友做一个小项目。任何帮助都会很好。提前谢谢你 我有一个文本框,但是我也可以使用html输入控件 和谷歌栏一样,你可以输入一个字母a,它会返回任何与字母a匹配的描述。它将在inut控件下显示匹配值,与goodle搜索栏相同 任何关于如何执行此代码示例C的想法都将非常好,谢谢。您可以使用jQuery和HTTP处理程序 下载(如果您还没有) 下载 下载 将文件复制到您的项目中。我的文件位于名为“脚本和样式”的子文件夹中 SQL: <html xmlns="http://www.w3
任何关于如何执行此代码示例C的想法都将非常好,谢谢。您可以使用jQuery和HTTP处理程序
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Auto complete</title>
<script src="Scripts/jquery-1.7.1.js" type="text/javascript"></script>
<link href="Style/jquery.autocomplete.css" rel="stylesheet" type="text/css" />
<script src="Scripts/jquery.autocomplete.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#txtSearch").autocomplete("Autocomplete.ashx");
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input id="txtSearch" type="text" />
</div>
</form>
</body>
</html>
using System;
using System.Data.SqlClient;
using System.Web;
namespace WebApplication17
{
public class Autocomplete : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
string connectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["connection"].ConnectionString;
string input = context.Request.QueryString["q"];
string query = "SELECT TOP 10 Search FROM Search WHERE Search LIKE '" + input + "%'";
using (var conn = new SqlConnection(connectionString))
{
using (var command = new SqlCommand(query,conn))
{
conn.Open();
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
context.Response.Write(reader.GetString(0) + Environment.NewLine);
}
}
}
}
public bool IsReusable
{
get{return false;}
}
}
}
作为示例,我创建了一个名为Search的本地数据库,它有一个表,其中包含两列SearchId和Search,用于存储一些虚拟搜索数据
ASPX:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Auto complete</title>
<script src="Scripts/jquery-1.7.1.js" type="text/javascript"></script>
<link href="Style/jquery.autocomplete.css" rel="stylesheet" type="text/css" />
<script src="Scripts/jquery.autocomplete.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#txtSearch").autocomplete("Autocomplete.ashx");
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input id="txtSearch" type="text" />
</div>
</form>
</body>
</html>
using System;
using System.Data.SqlClient;
using System.Web;
namespace WebApplication17
{
public class Autocomplete : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
string connectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["connection"].ConnectionString;
string input = context.Request.QueryString["q"];
string query = "SELECT TOP 10 Search FROM Search WHERE Search LIKE '" + input + "%'";
using (var conn = new SqlConnection(connectionString))
{
using (var command = new SqlCommand(query,conn))
{
conn.Open();
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
context.Response.Write(reader.GetString(0) + Environment.NewLine);
}
}
}
}
public bool IsReusable
{
get{return false;}
}
}
}
输出:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Auto complete</title>
<script src="Scripts/jquery-1.7.1.js" type="text/javascript"></script>
<link href="Style/jquery.autocomplete.css" rel="stylesheet" type="text/css" />
<script src="Scripts/jquery.autocomplete.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#txtSearch").autocomplete("Autocomplete.ashx");
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input id="txtSearch" type="text" />
</div>
</form>
</body>
</html>
using System;
using System.Data.SqlClient;
using System.Web;
namespace WebApplication17
{
public class Autocomplete : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
string connectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["connection"].ConnectionString;
string input = context.Request.QueryString["q"];
string query = "SELECT TOP 10 Search FROM Search WHERE Search LIKE '" + input + "%'";
using (var conn = new SqlConnection(connectionString))
{
using (var command = new SqlCommand(query,conn))
{
conn.Open();
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
context.Response.Write(reader.GetString(0) + Environment.NewLine);
}
}
}
}
public bool IsReusable
{
get{return false;}
}
}
}
我已经将项目的压缩版本放在了上。希望这有帮助 谢谢,这会很有帮助:)