McElroy, the starter in last week's loss to San Diego, developed headaches while lifting weights on Thursday and is being evaluated for a concussion, Ryan told reporters.
He will not play in the Jets' final regular-season game after being sacked 11 times against San Diego.
Sanchez began the season as the Jets' starter but was benched after the Jets, now 6-9 and out of the playoff picture, lost to Tennessee on Dec. 17.
Ryan said he chose Sanchez over back-up Tim Tebow because the Jets had won the season opener against Buffalo with Sanchez at quarterback.
"The fact that Mark had success earlier in the year against them, I thought this was the right decision," the coach said.
Tebow, who was already upset the Jets had turned to McElroy rather than him last week, was not happy with the latest decision, Ryan said.