2011-05-10 23 views
6

¿Cuál es la mejor manera de seleccionar un elemento que no contiene un número?jquery .not (": contiene ('<<any number>>')")

por ejemplo

$('div').not(":contains('1')").not(":contains('2')").not(":contains('3')")...; 

sábalo Lo sentimos he redactado mi mal ejemplo.

Tengo cerca de 20 divs seleccionados, y necesito filtrar los que no contienen un número para pasarlos a una función.

He tratado poniendo el ejemplo funcione como

if($(this:+'regex(html, #^0-9]')).length <1 { 

pero teniendo suerte

Respuesta

7

Sin utilizar un plugin que sólo puede usar el filtro.

$('div').filter(function() { 
    return !/[0-9]/.test($(this).text()); 
}); 

Proof

3

En vez de conseguir todo de lujo con selectores, puede utilizar .filter().

var re = /\d+/; 

var $noNumbers = $('div').filter(function() 
{ 
    return !$(this).text().match(re); 
}); 

Demostración: http://jsfiddle.net/mattball/3sRmt/