2010-12-09 4 views
3

Je tente de cacher certains éléments en utilisant la combinaison de keyup avec contient. Ce que je veux faire, c'est masquer les éléments span qui ne correspondent pas à mes valeurs d'entrée. Par exemple, si je saisis la valeur 1, les travées contenant les valeurs 2 et 3 sont cachées, ne laissant que l'intervalle contenant le 1 visible. Je veux aussi pour montrer toutes les portées si je puis supprimé la valeur 1 de l'entréeJquery Keyup avec Contient pour masquer l'étendue

Voici ce que j'ai jusqu'à présent, http://jsfiddle.net/8TXDM/36/

Répondre

3
var $spans = $(".mydiv span"); 

$('.myinput').keyup(function() { 
    var val = this.value; 
    if (val) { 
     $spans.filter(':contains(' + val + ')').show(); 
     $spans.filter(':not(:contains(' + val + '))').hide(); 
    } else { 
     $spans.show(); 
    } 
}); 

travail demo: http://jsfiddle.net/8TXDM/38/

0

Firebug dit:

mydiv is not defined 
[Break On This Error] $(mydiv).find('span:contains(' + (keys) + ')').show(); 
+1

C'est une faute de frappe. L'OP signifiait '$ (". Mydiv ")', pas '$ (mydiv)' –