vs2005 AutoCompleteExtender 控件的使用

一路有你 2011-04-21 02:41:30
前台:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>

<%@ Register Assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
Namespace="System.Web.UI" TagPrefix="asp" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" />
<cc1:AutoCompleteExtender ID="AutoCompleteExtender1" runat="server"
TargetControlID="TextBox1"
Enabled="true"
MinimumPrefixLength="1"
ServiceMethod="GetList"
ServicePath="WebService.asmx">
</cc1:AutoCompleteExtender>
</form>
</body>
</html>


WebService.asmx 页面
using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Web.Script.Services;

/// <summary>
/// WebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class WebService : System.Web.Services.WebService {

public WebService () {

//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}

//[WebMethod]
//public string HelloWorld() {
// return "Hello World";
//}
[System.Web.Services.WebMethod]
[System.Web.Script.Services.ScriptMethod]
public string[] GetList(string prefixText, int count)
{
string[] returnValue1 = { "张飞", "张苞", "张郃", "张辽" };
string[] returnValue2 = { "刘备", "刘禅", "刘璋", "刘表" };
switch (prefixText.ToLower())
{
case "张":
return returnValue1;
case "zhang":
return returnValue1;
case "刘":
return returnValue2;
case "liu":
return returnValue2;
default:
return new string[0];
}
}

}
...全文
43 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
子夜__ 2011-04-21
  • 打赏
  • 举报
回复
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
<html>
<head>
<title>google.html</title>
<meta http-equiv="content-type" content="text/html;charset=GBK">
<script type="text/javascript" src="js/jquery-1.3.2.js" charset="GBK"></script>

<script type="text/javascript">
var line = 0;
var oldValue = '';
function del() {
if ($("#newDiv")) {
$("#newDiv").remove();
line = 0;
}
}

$(document).ready(function() {
//文本框失去焦点时层消失
$(document.body).click(function() {
del();
});
});

function vchange() {
//alert("value change");
del();

//定位DIV
var top = $("#key").offset().top;
var left = $("#key").offset().left;
var newDiv = $("<div/>").width($("#key").width() + 6).css(
"position", "absolute").css("backgroundColor", "white")
.css("left", left).css("top", top + $("#key").height() + 6)
.css("border", "1px solid blue").attr("id", "newDiv");

/*过滤非法字符输入*/
if($("#key").value != ""){
//alert(oldValue);

/*过滤同名多次查询*/
if ($("#key").val() != oldValue) {
oldValue = $("#key").val();
var url = 'tsearch.action';
var params = {
//POST参数编码处理
key : encodeURI($("#key").val())
};
jQuery.post(url, params, callbackFun, 'json');
}
$(document.body).append(newDiv); //添加DIV
}

if ($("#key").val() == "") {
$("#newDiv").remove();
}
}

//回调函数
function callbackFun(data) {
var table = $("<table width='100%'/>").attr("cellpadding", "0").attr(
"cellspacing", "0");
if (data.result == "") {
//alert("你的关键字有误!");
var tr = $("<tr/>");
var td1 = $("<td/>").html("记录为空").css("fontSize", "12px")
.css("margin", "5 5 5 5");
tr.append(td1);
table.append(tr);
$("#newDiv").append(table);
} else {
var array = data.result.split(",");
for ( var i = 0; i < array.length - 1; i++) {
//alert(array[i]);
var tr = $("<tr/>").css("cursor", "pointer").mouseout(
function() {
$(this).css("backgroundColor", "white").css(
"color", "black");
}).mouseover(
function() {
$(this).css("backgroundColor", "blue").css("color",
"white");
}).click(function() {
$("#key").val($(this).find("td").eq(0).html());
del();
});

var td1 = $("<td/>").html(array[i]).css("fontSize", "12px")
.css("margin", "5 5 5 5");
tr.append(td1);
table.append(tr);
$("#newDiv").append(table);
}
}
}
</script>
</head>

<body>
<h1>Google搜索</h1>
<div style="margin-top: 20px; margin-left: 30px">
请输入搜索关键字:
<input name="key" id="key" onkeyup="vchange()" style="width: 300">
<input type="button" value="Goolge一下">
</div>
</body>
</html>


下载jquery-1.3.2.js
放js文件夹下 保存HTMl看效果
ycproc 2011-04-21
  • 打赏
  • 举报
回复
http://www.open-lib.com/Type/159-1.jsp

建议就用jquery的

简单多了
1 Accordion 2 AccordionPane 实现多面板,每次都只显示一个,其他收藏起来,可以设置显示隐藏的时间和渐变效果哦 3 AlwaysVisibleControlExtender 这个东西是将VerticalSide的值设置好后无论页面的滚动条滚动,这个目标控件一直都显示在页面的那个位置 4 AnimationExtender 5 AnimationExtenderControlBase 实现控件中内容的动画效果(移动、变化 大小、淡如淡出、变颜色等) 6 AutoCompleteExtender 自动的提示功能,在Google和丁丁地图中都用实现效果,不错的哦 7 CalendarExtender 日历控件 8 CascadingDropDown 级联下拉菜单 9 CollapsiblePanelExtender 点击某个控件,显示一个特定的面板和隐藏那个特定的面板 10 ConfirmButtonExtender 弹出一个确认按钮 11 DraggableListItemExtender 12 DragPanelExtender 拖动控件,将某个面板可以拖动,范围在该页面内 13 DropDownExtender 给任意控件添加下拉菜单 14 DropShadowExtender 将某个面板添加阴影 15 DynamicPopulateExtender 动态生成控件中的内容 16 FilteredTextBoxExtender 可以控制文本框中的输入内容,可以是系统的表达式(FilterType="LowercaseLetters/Numbers")也可以是自定义的(FilterType="Custom") 例如:FilterType="Custom, Numbers" ValidChars="+-=/*()." /> 表示只能输入数字和自定义的"+-=/*()." 这几个符号。。。 17 HoverExtender 18 HoverMenuExtender 鼠标放在某个控件上显示一个特定的面板 19 ListSearchExtender 为下拉菜单添加字母查找功能 20 MaskedEditExtender 21 MaskedEditValidator 输入框格式限定功能 22 ModalPopupExtender 出现模式对话框功能 23 MutuallyExclusiveCheckBoxExtender 多个选项某个选项独占功能 24 NoBot 防爬虫/机器输入功能 25 NumericUpDownExtender 数字值增减,这个效果经常看到哦,Kijiji上面就有的好像 26 PagingBulletedListExtender 按字母顺序的bbs功能 27 PasswordStrength 根据输入的密码客户端提示你输入密码的安全性 28 PopupControlExtender 29 PopupExtender 给任意控件添加一个需要弹出的控件或者面板 30 Rating 评级控件 31 ReorderList 任意添加列表内容并更改列表顺序 32 ResizableControlExtender 控件大小改变 33 RoundedCornersExtender 圆角大小 34 SliderExtender 类似音量大小那种拖动条空间 SlideShowExtender 幻灯片一张张播放图片,没有这个东西的时候做死人,用javascipt中写的 35 TabContainer 36 TabPanel tab控件 这个控件比较常用的哦,有个TabContainer1.ActiveTabIndex = 1; 来设置页面加载的时候显示第几个,默认值为最大的那个,从0开始的哦。 37 TextBoxWatermarkExtender 文本输入框提示文字控件,这个也是友好信息吧,一点就没有了。o(∩_∩)o...哈哈 38 ToggleButtonExtender 可改变的按钮,实际上是一个有图片的checkbox 39 UpdatePanelAnimationExtender 在某个特定的面板中数据更新的时候该面板显示出来的动画效果 40 ValidatorCalloutExtender 增强的输入验证控件

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧