Leeds found the opener with a neat finish from Jack Harrison, but Wolves felt hard done by moments later when they were denied a penalty for a foul on Nelson Semedo. Wolves' frustrations were compounded further at the start of the second half when Ayling doubled Leeds' lead with a free header at the back post from a corner with Rasmus Kristensen adding a third on the hour mark.
Then a spectacular long-range lob from Jonny appeared to kick Wolves into gear with Matheus Cunha bringing Julen Lopetegui's side to within one goal. But there was still time for more controversy deep into stoppage time when Rodrigo scored while Wolves Players were angrily protesting for an earlier foul on Adama Traore.
Matheus Nunes, who was an unused substitute on the Wolves bench, picked up a red card for his protests and was spotted being held back by Diego Costa. The win for Leeds saw them climb out of the relegation zone and just one point behind Wolves with a game in hand.