当前位置: 首页 > 面试题库 >

使用jQuery输入时过滤列表

夏锐藻
2023-03-14
问题内容

我打算使用一个简单的数据库查询来创建Web应用程序的用户的无序列表,但是后来打算让人们通过在文本输入中键入要查找的人的名字来过滤此列表。

我希望使用jQuery将输入框中的字符串与列表项中的任何一个匹配,然后隐藏其他项,也许是通过对包含匹配字符串的那些项动态地应用一个新类,并隐藏所有其他不包含该类。

有人知道这样做的好方法吗?


问题答案:

假设你ul有一个idtheList,下面会做的一种方式。

<input type="text" onkeyup="filter(this)" />

<script language="javascript" type="text/javascript">
    function filter(element) {
        var value = $(element).val();

        $("#theList > li").each(function() {
            if ($(this).text().search(value) > -1) {
                $(this).show();
            }
            else {
                $(this).hide();
            }
        });
    }
</script>

另外,对于基于Marek Tihkan发布的内容的更简洁的版本,您可以将以下内容替换each()循环。不知道这会更好还是更坏。

$('#theList > li:not(:contains(' + value + '))').hide(); 
$('#theList > li:contains(' + value + ')').show();


 类似资料:
  • 1.3.3. 过滤输入 过滤是Web应用安全的基础。它是你验证数据合法性的过程。通过在输入时确认对所有的数据进行过滤,你可以避免被污染(未过滤)数据在你的程序中被误信及误用。大多数流行的PHP应用的漏洞最终都是因为没有对输入进行恰当过滤造成的。 我所指的过滤输入是指三个不同的步骤: l识别输入 l过滤输入 l区分已过滤及被污染数据 把识别输入做为第一步是因为如果你不知道它是什么,你也就不能正确地过

  • 我们经常会要求用户在文本框中输入特定的数据,或者输入特定格式的数据。例如,必须包含某些字符,或者必须匹配某种模式。由于文本框在默认情况下没有提供多少验证数据的手段,因此必须使用JavaScript 来完成此类过滤输入的操作。而综合运用事件和DOM 手段,就可以将普通的文本框转换成能够理解用户输入数据的功能型控件。 1. 屏蔽字符 有时候,我们需要用户输入的文本中包含或不包含某些字符。例如,电话号码

  • 过滤用户数据是Web应用安全的基础。它是验证数据合法性的过程。通过对所有的输入数据进行过滤,可以避免恶意数据在程序中被误信或误用。大多数Web应用的漏洞都是因为没有对用户输入的数据进行恰当过滤所引起的。 我们介绍的过滤数据分成三个步骤: 1、识别数据,搞清楚需要过滤的数据来自于哪里 2、过滤数据,弄明白我们需要什么样的数据 3、区分已过滤及被污染数据,如果存在攻击数据那么保证过滤之后可以让我们使用

  • 问题内容: 我希望我不会错过doco中任何明显的内容,如果可以的话,我相信有人会帮助您。 我正在使用asp.net webapi返回带有日期字段的DTO。这些使用JSON.Net(格式为‘2013-03-11T12:37:38.693’)进行序列化。 我想使用过滤器,但是在INPUT元素中,这是否可行,或者我应该创建一个新的过滤器或指令来完成此操作? 我缺少任何捷径吗? 问题答案: 简而言之:如果

  • 主要内容:缩小搜索元素的范围,jQuery first() 方法,实例,jQuery last() 方法,实例,jQuery eq() 方法,实例,jQuery filter() 方法,实例,jQuery not() 方法,实例缩小搜索元素的范围 三个最基本的过滤方法是:first(), last() 和 eq(),它们允许您基于其在一组元素中的位置来选择一个特定的元素。 其他过滤方法,比如 filter() 和 not() 允许您选取匹配或不匹配某项指定标准的元素。 jQuery first(

  • 问题内容: 我在此站点上搜索了许多示例,但似乎无法满足我的需求。我只需要使用过滤一些JSON结果。 以下是我的JSON: 上面的例子 如何退回所有类别为的项目? 我将如何退回所有类别为和的项目? 我知道这不是一个很好的例子,但是任何帮助都会很棒!谢谢! 我尝试了以下变化 问题答案: returnData返回一个对象数组,因此您可以按数组索引访问它。 http://jsfiddle.net/wyfr