Pompey moved back into the League One play-off places with a hard-fought victory over MK Dons at Fratton Park.
It looked like a comfortable evening might be on the cards when Andy Cannon opened his account for the club early on.
But Alex Gilbey reacted quickly to level after Alex Bass had kept out his penalty just moments before the interval.
Both sides had chances to win the contest and John Marquis restored the Blues’ lead early in the second half, while Carlton Morris was then sent off for the visitors.
Marcus Harness then came off the bench to add a third goal at the death and breathe new life into the promotion charge.
Kenny Jackett made five changes from the side that were narrowly beaten at Fleetwood at the weekend.
Cannon had recovered from a glute problem, while Lee Brown was handed a first start since early December.
There were also returns for Ross McCrorie, Ryan Williams and Ben Close as the team was freshened up during a hectic schedule.
Oli Hawkins, Steve Seddon, Marcus Harness and Cameron McGeehan all dropped to the bench, with James Bolton missing from the squad.
Pompey made a flying start and took the lead on four minutes, thanks in part to some sloppy play from their opponents.
Jordan Houghton tried to pass out of his own box, but Williams intercepted the ball and squared for CANNON to slot home.
MK Dons almost hit back with an immediate equaliser, only for Bass to come to the rescue with a save from Gilbey.
The action fell pretty flat after that and there were not too many more clear-cut opportunities at either end of the pitch before the break.
Marquis and Close both had efforts blocked in quick succession, while Houghton’s long-range effort for the visitors flew straight at Bass.
The Dons were passing the ball around nicely, but lacking a clinical edge, with the hosts looking more likely to add to the scoring.
Lee Nicholls raced from his line to stop Marquis converting Cannon’s threaded pass, then kept out an angled Brown strike.
And the keeper was called into action again to tip over Close’s drilled attempt following some good work from McCrorie and Marquis.
But MK Dons were given an excellent chance to level in stoppage-time, when McCrorie rashly bundled over Rhys Healey in the box.
Bass guessed the right way to keep out Gilbey’s penalty, but the midfielder was quickest to the rebound and scored at the second attempt.
He did not exactly endear himself to the home support by celebrating right in front of the Fratton End.
And there were more boos – this time aimed at referee Kevin Johnson – when Pompey were not awarded a spot-kick of their own for George Williams’ challenge on Marquis.
Half Time: Pompey 1 MK Dons 1
The Blues might have fallen behind once the action restarted, with Christian Burgess making a fine sliding challenge after Gilbey had been sent through on goal.
But instead they retook the lead, with MARQUIS getting on the scoresheet to become the club’s leading marksman in his own right.
It was not the most elegant of finishes from McCrorie’s cut-back, with the ball striking a defender and the inside of the post before crossing the line.
They tried to increase their advantage and Close’s chipped cross was headed towards the net by Sean Raggett, but Nicholls made the save.
And the visitors then broke quickly up the pitch, with Burgess taking one for the team by fouling Gilbey and earning a yellow card.
They were still looking dangerous and a Dean Lewington free-kick was glanced narrowly past the post by Jordan Moore-Taylor.
Pompey were beginning to lose patience with Johnson, who failed to book players for a shove on Cannon and late challenge on Marquis.
Lewington finally had his name taken for his reaction to a foul on Williams, just seconds after Healey’s volley was well saved by Bass.
Both sides were looking capable of adding more goals to the contest, with Gladwin and Healey having opportunities for the visitors.
A couple of Ronan Curtis corners then caused problems at the other end, but were eventually scrambled clear.
Jackett had made a double change moments earlier, with Cannon and Williams replaced by McGeehan and Harness.
MK Dons’ hopes of a comeback were made tougher when they were reduced to 10 men in the closing stages.
Pompey had broken quickly from a corner and Curtis fed Marquis, who was brought down by Morris as he raced through on goal, with the forward shown a red card.
And they wrapped up the points just before the end, with HARNESS holding off a defender to collect Raggett’s header and neatly slotting home.
Pompey (4-2-3-1): Bass; McCrorie, Burgess, Raggett, Brown; Close, Naylor (c); Williams (Harness 77), Cannon (McGeehan 77), Curtis (Seddon 90+3); Marquis
Goals: Cannon 4, Marquis 59, Harness 90+1
Booked: Burgess, Cannon
Subs not used: MacGillivray, Whatmough, Pitman, Hawkins
MK Dons (4-1-2-1-2): Nicholls; Poole, Williams, Moore-Taylor, Lewington (c); Houghton (Reeves 73); Thompson (Nombe 77), McGrandles (Gladwin 62); Gilbey; Morris, Healey
Goals: Gilbey 45+2 (pen)
Sent off: Morris
Booked: Lewington, Poole
Subs not used: Fisher, Walsh, Brittain, Kasumu
Referee: Kevin Johnson
Attendance: 16,577 (170 away fans)