如何使用jQuery的grep()函数过滤动态输入
How to filter dynamic inputs using grep() function of jQuery
我使用jQuery的"grep"函数来过滤数据,下面的代码示例工作得很好,因为条件是静态的。
但如果"名称"answers"学校"参数有多个值如何过滤它…?,考虑我收到的名字&学校从多个复选框列表。理想情况下,我不想硬编码
var students =
[ {'id':1, 'name':'amit', 'school':'st john'},
{'id':2, 'name':'ankit','school':'st mary'},
{'id':3, 'name':'john', 'school':'hill school'},
{'id':4, 'name':'matt', 'school':'st john'}];
jQuery.grep(students,function(student)
{ return student.name =='john' && student.school=='st.john' });
//something like this is possible?
{ student.name =='john||jack||stella' && student.school=='st.john||st.mary' });
你可以这么做,但不是你想的那样:
var names = [ 'john', 'jack', 'stella' ];
var schools = [ 'st john', 'st mary' ];
var matches = jQuery.grep(students, function(student) {
return names.indexOf(student.name) != -1
&& schools.indexOf(student.school) != -1;
});
所以你只需要根据你的动态输入设置你的names
和schools
数组,然后你就可以开始了。
相关文章:
- 为什么此函数会过滤掉“空”值
- 如何在redux模块中创建一个helper类型的函数,从state返回一组经过过滤的只读数据
- 如何通过类名和过滤函数获取属性值
- 如何使用filter函数在javascript中过滤对象
- 使用 p5 和 Javascript 过滤显示内容的函数
- 返回列表的函数 - 过滤输出时出现问题
- jQuery .not() 没有从函数 - Ideas 中过滤元素
- JavaScript 函数检索输入 [type=number] 并根据值过滤它们
- 如何过滤数组并将其与 Javascript 中的函数参数进行比较
- 点击Angular过滤列表中的函数
- 用javascript创建简单过滤函数的最佳方法是什么
- 使用angular.forEach函数过滤HTML表以替换许多if/else语句
- 如果过滤函数是异步的,如何使用lodash过滤列表
- 使用函数式编程过滤文字对象
- Javascript箭头函数过滤数组的多个输入
- 在javascript/jquery中是否有任何内置功能来过滤邮件,如php's函数(!使用filter_var
- 交叉过滤中的reduceAdd, reduceSum, reducerremove函数是什么?它们应该如何使用?
- 如何用纯JavaScript重写这个jQuery搜索过滤函数?
- 基本的Javascript过滤函数在Angular2中不能正常工作
- 如何使用jQuery的grep()函数过滤动态输入