You could leverage the jQuery :hidden selector. It is not part of the official CSS selectors, but a jQuery selector.
$('input.id_schedule_hours:hidden').each(function(){
if( $(this).val() == 1) {
console.log('here')
}
}
Elements with visibility: hidden or opacity: 0 are considered to be visible, since they still consume space in the layout. During animations that hide an element, the element is considered to be visible until the end of the animation.
Elements that are not in a document are not considered to be visible; jQuery does not have a way to know if they will be visible when appended to a document since it depends on the applicable styles.
This selector is the opposite of the :visible selector. So, every element selected by :hidden isn't selected by :visible and vice versa.
During animations to show an element, the element is considered to be visible at the start of the animation.
How :hidden is determined was changed in jQuery 1.3.2. An element is assumed to be hidden if it or any of its parents consumes no space in the document. CSS visibility isn't taken into account (therefore $( elem ).css( "visibility", "hidden" ).is( ":hidden" ) == false). The release notes outline the changes in more detail.
jQuery 3 slightly modifies the meaning of :hidden (and therefore of :visible). Starting with this version, elements will be considered :hidden if they don't have any layout boxes. For example, br elements and inline elements with no content will not be selected by the :hidden selector.
See: jQuery :hidden documentation