asp.net -TextBox文本框输入框输入后如百度等搜索引擎的自动提示、自动完成、自动补全功能-wcf服务实现
和另一篇文章类似,此处用asp.net自带的 wcf服务实现输入框的自动补全,连接数据库取数实时显示匹配内容
1.web画面添加文本框和对应的方法
<asp:TextBox ID="txtSupplier" runat="server"></asp:TextBox>
<cc1:AutoCompleteExtender ID="aceSupplier" runat="server" TargetControlID="txtSupplier" CompletionInterval="1000"
MinimumPrefixLength="1" ServicePath="WebSupplier.svc" ServiceMethod="GetData">
</cc1:AutoCompleteExtender>
2.新建一个 WebSupplier.svc:
<%@ ServiceHost Language="C#" Debug="true" Service="WebSupplier" CodeBehind="~/App_Code/WebSupplier.cs" %>
3.建立类 WebSupplier.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Activation;
using System.ServiceModel.Web;
using System.Text;
[ServiceContract(Namespace = "")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class WebSupplier
{
// 要使用 HTTP GET,请添加 [WebGet] 特性。(默认 ResponseFormat 为 WebMessageFormat.Json)
// 要创建返回 XML 的操作,
// 请添加 [WebGet(ResponseFormat=WebMessageFormat.Xml)],
// 并在操作正文中包括以下行:
// WebOperationContext.Current.OutgoingResponse.ContentType = "text/xml";
[OperationContract]
public string[] GetData(string prefixText, int count)
{
return csService.QuerySupplier(prefixText);
}
// 在此处添加更多操作并使用 [OperationContract] 标记它们
}
4.上面类调用的另一个类csService
的QuerySupplier
方法,该方法返回字符数据,用于在web画面上显示一个个字符:
public static string[] QuerySupplier(string key)
{
SqlHelper.AddParameter("@keyword", key);
string[] result = new string[10];
SqlDataReader read = SqlHelper.ExecuteReader("stp_query", SqlHelper.GetParameters());
int i = 0;
while ((read.Read())) {
result[i] = read["supName"].ToString();
i = i + 1;
}
string[] result2 = new string[i];
for (int j = 0; j <= i - 1; j++) {
result2[j] = result[j];
}
return result2;
}
在测试过程中发现,再某些服务器上会不显示效果, 改成另一个jquery 方法完美解决:
asp.net -TextBox文本框输入框输入后如百度等搜索引擎的自动提示、自动完成、自动补全功能-jquerys实现
作者: 轻烟随风
当前文章地址: https://www.zyxpp.com/textboxautoindicatewcf/
来源: 轻烟随风的博客
文章版权归作者所有,欢迎转载
当前文章地址: https://www.zyxpp.com/textboxautoindicatewcf/
来源: 轻烟随风的博客
文章版权归作者所有,欢迎转载
THE END
二维码
文章目录
关闭
共有 1 条评论