Pompey returned to winning ways in style with a deserved victory over promotion rivals Charlton at The Valley.
The game – which was rearranged from the weekend because of a waterlogged pitch – saw the visitors create a hatful of chances.
They led at the break thanks to a superb Michael Jacobs strike, although Jayden Stockley levelled against his former club.
But the Blues were not to be denied and Tom Naylor restored the advantage before Andy Cannon wrapped things up with a fierce finish.
Kenny Jackett made four changes from the side that were beaten by Lincoln on home soil the previous week.
Charlie Daniels came in for his full Pompey debut, while there were also starts for James Bolton, Ellis Harrison and Jacobs.
Jack Whatmough started a three-match ban following his red card against the Imps, with Lee Brown, Ronan Curtis and Marcus Harness dropping to the bench.
The possession stats did not give a true indication of how the first half unfolded, with the hosts seeing more of the ball, but their opponents largely on top.
An early John Marquis effort did not overly trouble Addicks keeper Ben Amos, while it was the Londoners who were first to properly threaten.
A fizzing effort from the edge of the box by Albie Morgan on 10 minutes clipped the top of the crossbar.
But Pompey soon found their feet and looked particularly dangerous on the break, causing plenty of problems.
When Sean Raggett intercepted the ball, Harrison probably took too long to find Marquis, who was unable to keep his effort down.
A Daniels free-kick was blocked by the Charlton wall, while the follow-up from Harrison met the same fate.
Jacobs’ superb pass then found Marquis in the area, but Amos was quickly off his line to deny the striker.
Addicks skipper Darren Pratley was perhaps fortunate not to make a fuller connection with Cannon after lunging in on the midfielder and escaped with a booking.
That failed to stop Pompey’s attacking mindset, though, and Marquis’ shot was deflected wide after Deji Oshilaja’s slip opened up space.
But the deadlock was finally broken on 39 minutes – and it was a fine strike to give the Blues their deserved lead.
Naylor collected the ball from a corner and slipped a pass to JACOBS, who launched a rocket of a shot right into the top corner.
Pompey almost added a second in stoppage-time after the lively Harrison had stolen possession, but this time the attempt from Jacobs was deflected narrowly past the post.
Half Time: Charlton 0 Pompey 1
It was the visitors who had created most of the game’s best moments before the break, but their opponents levelled with the first decent chance of the second half.
A corner was sent into the box by Andrew Shinnie and Stockley rose highest to nod the ball past Craig MacGillivray.
Harrison came close to restoring the lead almost immediately, but Amos stuck out a hand to somehow deny him after Daniels’ free-kick had been nodded on by Marquis.
The goal did come soon after, however, as Harness – who had come on for Williams – whipped in a free-kick that was headed home by NAYLOR.
And it soon got even better, with CANNON stealing the ball from Ben Watson and hammering in a fierce shot that found the net off the inside of the post.
There were worries following a clash of heads between Raggett and Oshilaja, although both were fine to continue after getting bandaged up.
Charlton committed men forward in search of a route back into the contest, only for attempts from Watson and Liam Millar to fail to find the target.
Pompey let their opponents have the ball in the closing stages and there were eight minutes of stoppage-time for the hosts to do something special.
But the Blues – who brought on George Byers and Harvey White as the seconds ticked down – saw the game out to climb up to fourth in the table.
Charlton (4-1-2-1-2): Amos; Matthews, Gunter, Oshilaja, Maatsen; Pratley (c) (Watson 46); Forster-Caskey, Shinnie (Smith 77); Morgan (Millar 46); Schwartz (Aneke 61), Stockley
Goals: Stockley 52
Booked: Oshilaja, Pratley, Maatsen, Watson
Subs not used: Maynard-Brewer, Pearce, Purrington
Pompey (4-4-2): MacGillivray; Johnson, Bolton, Raggett, Daniels; Williams (Harness 53), Naylor (c), Cannon, Jacobs (White 90+5); Marquis (Byers 87), Harrison
Goals: Jacobs 39, Naylor 55, Cannon 61
Booked: Harrison, Naylor
Subs not used: Ward, Mnoga, Brown, Curtis
Referee: Lee Swabey