<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>AJAX控件之AutoComplete</title>
</head>
<body style="text-align: center">
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<div>
<asp:TextBox ID="MyAuto" runat="server" Width="191px"></asp:TextBox><br />
<br />
<cc1:AutoCompleteExtender ID="ace" runat="server" CompletionInterval="100" MinimumPrefixLength="1"
ServiceMethod="GetCompletionList" ServicePath="WebService.asmx" TargetControlID="MyAuto">
</cc1:AutoCompleteExtender>
</div>
</form>
</body>
</html>
using System;
using System.Web;
using System.Collections.Generic;
using System.Web.Services;
using System.Web.Services.Protocols;
/// <summary>
/// WebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
//用以调用Web Service方法签名
[System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService {
public WebService () {}
[WebMethod]
public string[] GetCompletionList(string prefixText, int count)
{
//if (count == 0)
//{
// count = 10;
//}
Random random = new Random();
List<string> items = new List<string>(count);
for (int i = 0; i < count; i++)
{
char c1 = (char)random.Next(65,90);
char c2 = (char)random.Next(97, 122);
char c3 = (char)random.Next(48, 57);
char c4 = (char)random.Next(33, 43);
items.Add(prefixText + c1 + c2 + c3 + c4);
}
return items.ToArray();
}
}
分享到:
相关推荐
在页面中,需要添加一个 JavaScript 函数,该函数用于在用户输入时,调用WebService方法,以获取可能的选项。该函数使用了onblur事件,即在用户离开TextBox控件时,调用WebService方法。 在WebService文件中,需要...
使用`[System.Web.Script.Services.ScriptService()]`属性标记,表明该Web服务支持AJAX调用,可以被JavaScript客户端直接调用,这对于实现AutoCompleteExtender至关重要。 3. **方法实现**: - `GetWordList`方法...
在这个例子中,当用户在txtSearch文本框中输入至少3个字符后,AutoCompleteExtender将每500毫秒调用一次名为GetString的Web Service方法。 **Web Service 示例代码:** ```csharp [WebService(Namespace = ...
在本例中,通过 `<%@WebService Language="C#" CodeBehind="~/App_Code/AutoComplete.cs" Class="AutoComplete"%>` 来指定 Web 服务的语言、后台代码文件以及类名。 - **AutoComplete.cs**:这是 Web 服务的实现文件...
需要设置的主要属性有`TargetControlID`(指定与之关联的TextBox ID)、`ServiceMethod`(定义调用的Web服务方法名)以及`MinimumPrefixLength`(决定何时开始触发下拉提示的最小字符数)。 2. **创建WebService**...
AutoCompleteExtender控件的工作原理是当用户在指定的TextBox控件中输入文字时,它会根据用户输入的前缀文本(prefixText)实时向服务器发送请求,通过调用WebService或页面内的方法获取匹配的建议数据,并将这些...
2. **调用WebService方法** - **创建Web服务**: 在.NET环境中,可以创建一个ASMX或WCF Web服务,其中包含一个公开的方法来处理自动完成请求。这个方法通常接收用户的输入值作为参数,并返回匹配的建议列表。 - **...
在App_Code目录下找到对应的webservice.cs文件,取消注释 `[System.Web.Script.Services.ScriptService]` 属性,以允许客户端调用Web服务。然后定义一个[WebMethod],如`GetData`,该方法接受用户的输入前缀...
AutoCompleteExtender控件实现自动输入建议的功能,通过调用WebService或本页面对应的方法名来获取提示数据,供用户达到自动选择的功能。 实现过程: 1.首先建立数据大家随便啊,然后建立个简单的表。 2.新建1个...
在`WebService.asmx`文件中,你需要添加`[System.Web.Script.Services.ScriptService]`和`[System.Web.Services.WebService]`特性,以便允许AJAX调用。然后定义一个名为`GetEnglishName`的方法,它接受用户输入的...
<ajaxToolkit:AutoCompleteExtender ID="AutoCompleteExtender1" runat="server" TargetControlID="TextBox1" ServicePath="~/Service.asmx" ServiceMethod="GetAutoCompleteData" MinimumPrefixLength="2" /> ...
// 若要使 ASP.NET AJAX 能从脚本中调用此 Web 服务,请取消注释以下行。 [ScriptService] public class AutoCompleteExample : System.Web.Services.WebService { [WebMethod] [ScriptMethod(ResponseFormat = ...
- **WebService** 和 **PageMethod**:ASP.NET AJAX可以调用Web服务或页面方法,使客户端JavaScript能够与服务器端代码进行异步交互,获取或提交数据。 - **AJAX Extensions**:除了内建的控件,还有许多第三方控件...
使用`[System.Web.Script.Services.ScriptService]`特性来标记整个类,使其可以通过AJAX进行调用。 ```csharp [System.Web.Script.Services.ScriptService] public class MyWebService : System.Web.Services....
4. **AjaxControlToolkit**:微软提供的一个开源工具集,包含多种预构建的Ajax控件和行为,如Accordion、AutoCompleteExtender等。 ## 三、创建Ajax请求 在ASP.NET中,可以通过`PageMethods`或`WebServices`创建...
读者将学习如何利用AJAX技术实现无刷新的邮件发送和接收功能,包括使用WebService或PageMethod进行后台通信,处理邮件的发送、接收、显示和管理。章节中可能涵盖的主题包括SMTP服务器配置、邮件类的使用,以及如何...
此外,你还将学习UpdatePanel控件,它允许你创建无刷新的页面区域,通过异步调用服务器端方法来更新。 第2章:AJAX Control Toolkit中的文本输入处理 ASP.NET AJAX Control Toolkit是一个开源项目,包含了一系列预...
2. **WebService和XMLHttpRequest**:在处理邮件时,可以使用ASP.NET Web Service(ASMX)或WCF服务,通过XMLHttpRequest对象进行异步调用。 3. **邮件验证**:在客户端和服务器端进行邮件地址的有效性验证,防止...