【问题标题】:What approach should I use to do client side filtering?我应该使用什么方法进行客户端过滤?
【发布时间】:2014-02-07 15:49:22
【问题描述】:

我正在做一个 asp.net mvc3 web 应用程序的前端。控制器操作将数据库驱动的列表发送到视图模型,然后填充一系列 div。我在 div 列表上方有一个过滤部分。我不确定采用哪种方法来实现过滤器。我考虑过自己动手(我总是把这个选项放在桌面上),使用 jQuery 的 .filter(),或者找到一些 JavaScript 功能来使用。

用 JavaScript(或 js 派生库)过滤客户端的标准方法是什么?

编辑

由于 gdoron 缺乏上下文:

js

var gdoronArray = [];
for(var i = 0; i < 10000; i++){
 gdoronArray.push("text" + i + " " + (i*10));
}

是否有一个标准库可以仅提取 gdoronArray 中包含“ext5”的项目,或者这只是您自己的情况?

【问题讨论】:

  • 我不太明白这个问题。
  • @gdoron - 你对过滤了解多少?
  • 您需要点击事件,然后根据点击或操作的过滤器部分过滤方法。这对 SO 来说不是一个很好的问题,它太宽泛了,正在征求意见。
  • 你在做什么类型的过滤?你在过滤什么? “过滤器”包含什么?
  • 请在 cmets 中讨论问题,讨论/辩论可以去CHAT 尽量客观,以便 cmets 可以帮助其他人。

标签: javascript jquery filtering


【解决方案1】:
gdoronArray.filter( function(v){
    return !!~v.indexOf("ext5");
});

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/filter

【讨论】:

  • 顺便说一句,准确地说这个解决方案不是跨浏览器会很好:)
  • 解决跨浏览器问题的方法是包含本页兼容性部分的代码:developer.mozilla.org/en/JavaScript/Reference/Global_Objects/…
  • @KevinB - 该修复是否会使 IE8 符合.filter? IE8 是一个巨大的市场,不容忽视。在该链接的底部,它指出只有 IE9+ 兼容。
  • @TravisJ 是的,代码是纯 javascript 并且适用于 IE6-8。它只是没有在这些浏览器中以原生方式包含在内。但它并没有做任何神奇的事情,因此可以使用链接中列出的代码来完成。
猜你喜欢
  • 1970-01-01
  • 2015-01-19
  • 1970-01-01
  • 1970-01-01
  • 2019-09-05
  • 1970-01-01
  • 1970-01-01
  • 2010-10-30
  • 2015-12-10
相关资源
最近更新 更多