Rasmus Kristensen scored Leeds' third moments after entering the fray in the second half
Leeds climbed out of the Premier League relegation zone after holding off a late Wolves fightback to win an enthralling game at Molineux.
The victory lifts Javi Gracia's side - who started the day in 19th - four places and two points above the bottom three.
Jack Harrison, who scored in last weekend's 2-2 draw at home to Brighton, side-footed Wilfried Gnonto's cut-back past Jose Sa to give the visitors an early lead after a bright start.
Leeds doubled their advantage four minutes into the second half as Luke Ayling, left completely unmarked by the Wolves defence, beat Sa with a low header from point-blank range.
More questionable defending from Jonny gifted second-half substitute Rasmus Kristensen a third, before the Wolves wing-back gave his team hope with a tremendous volleyed finish after Illan Meslier had come rushing out of his goal to make a clearance.
Matheus Cunha's deflected strike set up a nail-biting finale, but Wolves' hopes of a dramatic comeback were dealt a blow when Jonny was shown a straight red card for a reckless, studs-up challenge on Ayling with just over six minutes remaining.
Rodrigo completed the scoring deep into added time, lifting the ball over the onrushing Sa for his 11th league goal of the campaign.
Julen Lopetegui's side stay 13th but remain only three points above the relegation zone, having played at least a game more than the majority of their rivals near the foot of the table.
- Follow Wolves v Leeds and the rest of Saturday's Premier League actionVisit our Wolves pageMore Leeds content
Rare away success breathes life into Leeds survival bid
Leeds have shown plenty of promise in their two home games under new manager Gracia but had lost both games away from Elland Road under the 52-year-old - at Fulham in the FA Cup and Chelsea in the league - prior to Saturday.
The visitors certainly didn't start like a team with only one top-flight victory on their travels this season, taking the game to Wolves and going in front with just six minutes on the clock.
Gnonto, restored to the side in place of Crysencio Summerville, was particularly lively early on and vindicated his manager's decision with a brilliant cut-back into Harrison, who side-footed home his second goal in as many games.
The visitors had their backs to the wall for the rest of the first half as Wolves applied heavy pressure, but a combination of smart goalkeeping, last-ditch defending and wasteful finishing ensured they went into half-time with their narrow lead intact.
Second-half goals from Ayling and Kristensen - who scored moments after replacing Gnonto in the second half - gave Leeds a seemingly comfortable platform for a rare away victory, but Jonny's spectacular finish and Cunha's low effort - which took a heavy deflection off Maximilian Wober on its way in - offered Wolves an unlikely lifeline.
Ayling was fortunate to escape serious injury when Jonny caught the Leeds skipper with a high challenge after a heavy touch, but the 31-year-old was back on his feet quickly to help the visitors see out the victory.
Rodrigo's late effort was subject to a VAR review for an apparent foul by Marc Roca on Adama Traore in the build-up, but after viewing the incident on his pitchside monitor referee Michael Salisbury decided to award the goal.
Player of the match
with an average of 8.42
- WolvesWolverhampton WanderersWolverhampton WanderersLeedsLeeds UnitedLeeds United
Wolverhampton WanderersAvgSquad number37Player nameTraoréAverage rating
Squad number8Player nameRúben NevesAverage rating
Squad number1Player nameJosé SáAverage rating
Squad number22Player nameNélson SemedoAverage rating
Squad number23Player nameKilmanAverage rating
Squad number15Player nameDawsonAverage rating
Squad number9Player nameJiménezAverage rating
Squad number7Player namePedro NetoAverage rating
Squad number10Player nameDaniel PodenceAverage rating
Squad number12Player nameMatheus CunhaAverage rating
Squad number5Player nameLeminaAverage rating
Squad number35Player nameJoão GomesAverage rating
Squad number28Player nameJoão MoutinhoAverage rating
Squad number21Player nameSarabiaAverage rating
Squad number4Player nameCollinsAverage rating
Squad number19Player nameJonnyAverage rating
Leeds UnitedAvgSquad number11Player nameHarrisonAverage rating
Squad number39Player nameWöberAverage rating
Squad number29Player nameGnontoAverage rating
Squad number25Player nameKristensenAverage rating
Squad number19Player nameRodrigoAverage rating
Squad number2Player nameAylingAverage rating
Squad number5Player nameKochAverage rating
Squad number1Player nameMeslierAverage rating
Squad number21Player nameStruijkAverage rating
Squad number10Player nameSummervilleAverage rating
Squad number8Player nameRocaAverage rating
Squad number28Player nameMcKennieAverage rating
Squad number3Player nameFirpoAverage rating
Squad number9Player nameBamfordAverage rating
Squad number7Player nameAaronsonAverage rating
- Line-upsMatch StatsLive Text
1Sá22Nélson Semedo15Dawson23Kilman19Castro Otto8Neves5Lemina35João Gomes7Neto9Jiménez10Podence
- 1Sá22Nélson SemedoBooked at 53minsSubstituted forMatheus Cunhaat 57'minutes15DawsonBooked at 37minsSubstituted forCollinsat 45'minutes23Kilman19Castro OttoBooked at 84mins8NevesSubstituted forJoão Moutinhoat 76'minutes5Lemina35João GomesBooked at 87mins7NetoSubstituted forSarabiaat 45'minutes9Jiménez10PodenceSubstituted forTraoréat 57'minutes
- 4Collins12Matheus Cunha21Sarabia24Gomes25Bentley27Nunes28João Moutinho29Diego Costa37Traoré
- 1MeslierBooked at 90mins2AylingBooked at 24mins5Koch39Wöber3FirpoBooked at 45minsSubstituted forStruijkat 81'minutes8RocaBooked at 75mins28McKennieBooked at 45mins11Harrison7AaronsonSubstituted forSummervilleat 81'minutes29GnontoSubstituted forKristensenat 61'minutes9BamfordSubstituted forRodrigoat 67'minutes
Referee:Michael SalisburyAttendance:31,570Match StatsHome TeamWolvesAway TeamLeedsPossessionHome66%Away34%ShotsHome23Away11Shots on TargetHome8Away4CornersHome5Away4FoulsHome14Away9Live Text Post update
Match ends, Wolverhampton Wanderers 2, Leeds United 4.
Second Half ends, Wolverhampton Wanderers 2, Leeds United 4.
Attempt missed. Pablo Sarabia (Wolverhampton Wanderers) left footed shot from outside the box is close, but misses the top left corner from a direct free kick.
Illan Meslier (Leeds United) is shown the yellow card.
João Moutinho (Wolverhampton Wanderers) wins a free kick in the attacking half.
Foul by Crysencio Summerville (Leeds United).
Corner, Wolverhampton Wanderers. Conceded by Robin Koch.
Matheus Nunes (Wolverhampton Wanderers) is shown the red card.
VAR Decision: Goal Leeds United - Wolverhampton Wanderers 2-4 Leeds United (Rodrigo).
Goal! Wolverhampton Wanderers 2, Leeds United 4. Rodrigo (Leeds United) left footed shot from the centre of the box to the bottom left corner. Assisted by Crysencio Summerville with a through ball.Goal confirmed following VAR Review.
Hand ball by Pablo Sarabia (Wolverhampton Wanderers).
Attempt saved. Raúl Jiménez (Wolverhampton Wanderers) header from a difficult angle on the left is saved in the top centre of the goal. Assisted by Adama Traoré with a cross.
Attempt missed. Matheus Cunha (Wolverhampton Wanderers) header from the centre of the box is too high. Assisted by Pablo Sarabia with a cross.
Hand ball by Rodrigo (Leeds United).
João Gomes (Wolverhampton Wanderers) is shown the yellow card for a bad foul.
Foul by João Gomes (Wolverhampton Wanderers).
Marc Roca (Leeds United) wins a free kick in the attacking half.
Delay over. They are ready to continue.
Jonny (Wolverhampton Wanderers) is shown the red card.
Delay over. They are ready to continue.
Page 1 of 7rewindpreviousNavigate to the next pagenextNavigate to the last pageforward
- Our coverage of your Premier League club is bigger and better than ever before - here's everything you need to know to make sure you never miss a moment