Bradford manager Mark Hughes was booed after Walsall came from behind to win 3-1 at Valley Parade.
The home side had taken the lead from Andy Cook’s penalty midway through the first half after Joe Riley fouled Rayhaan Tulloch.
But Walsall responded well to equalise three minutes later as Liam Gordon took advantage of nobody closing him down to plant an angled low shot past home keeper Harry Lewis.
Isaac Hutchinson and Donervon Daniels had chances as the visitors grew in confidence and they went ahead through a scrappy goal just before half-time.
Ross Tierney’s corner was flicked on by Oisin McEtee and then deflected off Kevin McDonald and Walsall striker Aramide Oteh, who claimed the goal.
Walsall went further in front after 56 minutes as Freddie Draper headed home unmarked from another Tierney corner.
Tulloch almost pulled one back but was denied on the line by Riley’s block as Walsall bounced back from consecutive defeats with a well-deserved win.
Angry home fans made their feelings clear at the final whistle.