我想做一个发送程序中的地址簿(Web),我想实现和OutLook差不多的功能
也就是上面一个input文本框,下面一个Listbox(里面绑定了邮件地址,并且邮件地址按字母顺序A-Z的排列着)
当我在Input文本框中输入值的时候,下面Listbox里的内容要发生变化,比如
当我输入"l"的时候,listbox中已L开头的邮件地址要提前,并且排最前面的要突出显示(被选),我再按"i"时候, 那么listbox中"li"开头的的邮件提前,最前的突出显示.
我把前台和后台代码给大家看下,请指教.
<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %><!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>Untitled Page</title>
<script language="javascript" type="text/javascript">
<!--function FindAddress() {
//请问这里如何写代码?
}// -->
</script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <input id="Text1" type="text" language="javascript" onkeypress = "FindAddress()" /><br />
        <asp:ListBox ID="ListBox1" runat="server" Height="179px" Width="153px"></asp:ListBox></div>
    </form>
</body>
</html>
/****************************************************/
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            DataSet ds = new DataSet();
            ds = GetAddress();//得到数据集,篇幅原因不再写出
            ListBox1.Items.Clear();
            ListBox1.DataSource = ds;
            ListBox1.DataTextField = "Name";
            ListBox1.DataValueField = "Mail";//Name 和 Mail为2个字段名
            ListBox1.DataBind();
        }
    }
}
我开始想通过当input 输入值时候就响应一个button,从而达到到操作listbox的目的,但是我每输入一个字符,响应button后就input的值就清空了