C# DropDownList控件添加输入搜索功能
时间: 2023-07-12 13:04:26 浏览: 185
DropDownSearch
要给C# DropDownList控件添加输入搜索功能,可以使用以下步骤:
1. 在页面上添加一个文本框和一个DropDownList控件。
2. 给文本框添加一个onkeyup事件,每当用户输入内容时就会触发该事件。
```C#
<asp:TextBox ID="txtSearch" runat="server" onkeyup="searchDropDownList()"></asp:TextBox>
<asp:DropDownList ID="ddlItems" runat="server"></asp:DropDownList>
```
3. 在JavaScript中编写searchDropDownList函数,该函数将获取文本框中的内容并使用jQuery筛选DropDownList中的项。然后将过滤后的项重新绑定到DropDownList中。
```JavaScript
function searchDropDownList() {
var input, filter, ul, li, a, i;
input = $("#<%=txtSearch.ClientID %>").val().toUpperCase();
filter = input;
var items = $("#<%=ddlItems.ClientID %> option");
for (i = 0; i < items.length; i++) {
if (items[i].text.toUpperCase().indexOf(filter) > -1) {
items[i].style.display = "";
} else {
items[i].style.display = "none";
}
}
}
```
4. 在页面加载时,以及DropDownList数据发生变化时,都需要调用searchDropDownList函数来刷新过滤结果。
```C#
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
// 绑定DropDownList数据
BindDropDownList();
// 初始过滤
searchDropDownList();
}
}
protected void ddlItems_SelectedIndexChanged(object sender, EventArgs e)
{
// 数据变化时,刷新过滤结果
searchDropDownList();
}
```
5. 最后,可以在CSS中为DropDownList添加样式以使其更容易被搜索。
```CSS
select {
padding: 5px;
margin: 0;
border: 1px solid #ccc;
box-shadow: none;
font-size: 14px;
line-height: 1.42857143;
color: #555;
background-color: #fff;
}
```
阅读全文