Billy Sharp scored two goals in three minutes as struggling Doncaster came from behind to stun Leicester.
David Nugent gave the promotion-chasing Foxes the lead when he beat Sam Hird before firing the ball over goalkeeper Gary Woods.
But Sharp equalised in the 63rd minute with a downward header from Marc-Antoine Fortune's cross.
He sealed the points when he chipped the ball up before unleashing an overhead kick past Kasper Schmeichel.
The result will disappoint Leicester, especially considering their positive start when Steve Howard picked out Nugent, who outpaced Hird before firing home.
Doncaster pushed for a leveller after the break, with Simon Gillett's header being tipped over by Schmeichel before the midfielder blazed over from the edge of the area.
But then Sharp, who had earlier spoken about the heartbreak he still feels over losing his newborn son to gastroschisis in October , turned the game around.
First he headed through Schmeichel's legs and moments later the 25-year-old scored the winner with a stunning scissor-kick.
Leicester, who drop to 10th in the table, tried hard to find an equaliser but Richie Wellens missed two close-range chances against his former club, who are now just two points away from safety.
Doncaster Rovers manager Dean Saunders:
"We've got a lot of injuries and had everything stacked against us so it was a great result for us.
"I didn't think we deserved to be behind but it was a game where we had to fight and scrap - and we did that. A draw would have been a good result and I set the team up to make it difficult for them.
"Billy Sharp scored a brilliant goal for the winner but the whole team did well and if we carry on like that we won't have a problem climbing out of the bottom three."
Leicester City manager Nigel Pearson:
"I would have been disappointed just to draw - let alone lose - after being in front. We have to be better than that.
"It was nothing to do with the technical side - we just have to be mentally tougher.
"I need to change the players' mentality, or change the players themselves, because we are under-performing and that's the reason we are not where we want to be almost halfway through the season."
Sorry, we were unable to load match stats, please try again.