我假设你愿意使用 jQuery。
首先,您需要有一些方法可以通过 javascript 引用您的列表和文本框。我将以 id 为例,但它可能是任何东西。
<input type="text" id="search-box" />
<ul id="clients-list">
<!-- clients list here -->
</ul>
然后,在 javascript 上,您可以监听keyup事件。
$("#search-box").on("keyup", filterClients);
这将使该filterClients
函数在用户释放键时被调用。有很多方法可以定义它,但我会采用简单的方法:
function filterClients(event) {
var $search = $(event.target);
var text = $search.val();
var $clients = $("#clients-list li");
$clients.each(function() {
var $client = $(this);
var clientName = $client.text();
var searchMatchesName = clientName.toUpperCase().indexOf(text.toUpperCase()) >= 0;
if(searchMatchesName) {
$client.show();
} else {
$client.hide();
}
});
}
这不是最有效或更花哨的方法,但应该足以让您入门。
工作 jsFiddle:http: //jsfiddle.net/u5WS3/