在 Javascript 中过滤列表

Filter through list in Javascript

本文关键字:列表 过滤 Javascript      更新时间:2023-09-26

我在一个框中有一个名称列表,我想根据用户输入对其进行过滤并过滤掉不匹配的名称。 很像这个例子:http://www.somacon.com/p241.php。 我是Javascript的新手,这就是我的名字在框中的显示方式:

<select id="authorSelectId" multiple="multiple" class="accordionSelect">
<c:forEach var="author" items="${dropDownValues.authorDisplayList}">
<option value="${author}">${author}</option>
</c:forEach>
</select>

这是我给用户的输入框:

<input onKeyUp="handleKeyUp(20);" type="text" id='functioninput' name="functioninput" VALUE="" style="font-size:10pt;width:34ex;">
我的

代码正确地调用了我的"handleKeyUp(20)"方法。 但是我不确定如何链接到"authorSelectId"名称列表并根据"functionInput"文本过滤这些名称。 如果需要更多代码,我可以提供。 任何帮助,不胜感激。

您可以使用以下命令获取对 authorSelectId 的引用:

var asi= document.getElementById("authorSelectId");

然后,您可以像这样迭代选项:

for (var i= 0; i < asi.options.length; ++i) {
    var opt= asi.options[i];
    if (opt.selected) {
        // do something...
    }
}