$('.Schedule .Full input').each(function(i)
{
var controls = $('.Morning input, .MorningPart input, .Afternoon input, .AfternoonPart input', $(this).parents('.Schedule'));
alert(controls.length + " Conflicting Controls\n"+
$(this).parents('.Schedule').attr('id') + " Parent");
});
When I run this code in Firefox the first execution of this function produces an alert box saying the following:
17 Conflicting Controls
Monday Parent
The exact same page run in IE 6 or 7 produces an alert box saying the following:
45 Conflicting Controls
Monday Parent
Firefox is right, there are only 17 conflicting controls. The 45 that IE is identifying are controls that are not a descendant of "Monday". If I've specified "Monday" as the context for the $() function, why is IE returning controls outside of it?