How can I get the elements without a particular attribute by jQuery
If your code example is the exact code you're using, I think the problem is an errant space.
$("#para :not([attr_all])")
should be
$("#para:not([attr_all])")
If you leave a space in there, it selects descendants of #para
.
First thing that comes to my mind (maybe sub optimal) :
$('p').filter(function(){
return !$(this).attr('attr_all');
});
However p:not([attr_all])
should work, so I think something else is going on in your code.