Saturday's League One reports

AFC Wimbledon 1-1 Charlton

Tom Elliott scored a dramatic late equaliser before being sent off as AFC Wimbledon held Charlton Athletic to a draw in an ill-tempered derby at Kingsmeadow.

Wimbledon's pressure finally paid off with almost the last kick of the game when Elliott finished superbly - only to be shown a second yellow card for over-celebrating the goal.

Ricky Holmes' excellent free-kick looked to have been the difference between the two sides as he curled home expertly after Joe Aribo had been fouled.

Aribo almost doubled the Addicks' lead five minutes later but his effort curled just the wrong side of the post.

The hosts finished the half better and goalscorer Holmes was lucky not to see red after a horror tackle on Lyle Taylor was deemed only a caution by referee Carl Boyeson.

Lee Novak spurned a glorious chance to double Charlton's lead just after the break, a miss he was made to pay for as Elliott popped up for his 12th goal of the season in dramatic circumstances, only to be sent off before the final whistle.

Report supplied by the Press Association.

Bolton 4-1 Walsall

Bolton recorded their first League One win of 2017 with a convincing victory over Walsall.

And they did it the hard way, recovering from Erhun Oztumer's goal of the season contender after four minutes.

Without a win in their previous six matches, promotion chasing Wanderers were rocked by Oztumer's stunning 40-yard strike.

But Walsall, unbeaten in five before their trip to the Macron Stadium, conceded an equaliser to striker Gary Madine's header 11 minutes later.

Jay Spearing, provider of the assist for Madine from a corner, then crossed from the opposite side and James O'Connor put past his own keeper, Neil Etheridge.

It got even better for Bolton when Liam Trotter thumped home from 25 yards for his third of the campaign after 30 minutes.

Florent Cuvelier thought he'd dragged Walsall back into contention after 58 minutes. Instead, assistant referee, Sebastian Stockbridge, ruled Cuvelier's shot hadn't crossed the line before Mark Beevers hacked clear.

Stockbridge had stepped up from fourth official duties during a half-time extended to nearly half an hour due to medical treatment for original assistant referee, Helen Byrne.

That was as close as the Saddlers came to mounting a comeback and Madine should have doubled his tally but fired straight at Etheridge before substitute Chris Long rifled in Bolton's fourth and his first since joining on loan from Burnley after 87 minutes.

Report supplied by the Press Association.

Bristol Rovers 1-1 Bradford City

Goalkeeper Joe Lumley produced a trio of fine second-half saves to earn Bristol Rovers a League One draw with Bradford at the Memorial Stadium.

The Queens Park Rangers loanee performed heroics to keep out efforts from Tony McMahon, Billy Clarke and Nathaniel Knight-Percival as the visitors pressed for a winner.

Rovers took a 15th-minute lead when Chris Lines picked up the ball just outside the right-hand corner of the box and curled an exquisite left-footed shot into the opposite corner of the net.

But the lead lasted only 11 minutes as Charlie Wyke's clever back-heel inside the box allowed Nicky Law to beat Lumley with a clinical finish from 10 yards.

Both sides attacked with purpose from the opening whistle, Rory McArdle heading just over for Bradford and Rovers winger Cristian Montano having a goal-bound shot blocked by McMahon in a competitive first half.

Bradford had the better chances after the break, but the hosts stood firm thanks largely to Lumley's bravery and agility.

Report supplied by the Press Association.

Bury 1-0 Swindon

Bury dragged fellow strugglers Swindon into the League One relegation zone after claiming a home win against the Robins.

James Vaughan's 37th-minute penalty was enough to win a cagey contest and send the Shakers above Swindon, although Bury remain in the bottom four too.

Given their league position, each side adopted a defensive approach so clear-cut chances were at a premium, with Bury's Reece Brown firing an early free-kick wide before Swindon's Ben Gladwin headed over.

Greg Leigh and Tom Pope then went close for the hosts before Raphael Rossi Branco was penalised for holding Pope from a corner and Vaughan smashed the spot-kick down the middle for his 18th goal of the season.

Swindon replied with Gladwin's long-range strike clipping the crossbar before Fankaty Dabo and Jermaine Hylton went close either side of the break.

Vaughan then fired over from Jacob Mellis' throughball while substitute Andrew Tutte volleyed wide.

Swindon threatened with sub Jonathan Obika and Gladwin firing straight at Joe Murphy from 20 yards.

Vaughan and Tutte were then off target again and they were almost made to pay as Charlie Colkett fired wide in stoppage time.

Report supplied by the Press Association.

Fleetwood 0-0 Rochdale

League One play-off rivals Fleetwood and Rochdale both squandered gilt-edged chances as they ground out a goalless stalemate at Highbury Stadium.

Mark Kitching's long-range effort was the only real opportunity in a hard-fought and frantic first 25 minutes in which Dale dominated but failed to test Alex Cairns.

Ash Hunter came as close as any to opening the scoring before the break, sprinting clear with a perfectly-timed run, Ben Wilson catching hold of his low blast at the second attempt.

Fleetwood's pace up front was a problem for the visitors and David Ball might have broken the deadlock 30 seconds into the second half.

The striker kept his balance as he squeezed between Dale's centre-half pair but -having made the space to shoot -somehow fired wide of the upright.

The hosts were almost made to pay for wasted chances when Kyle Dempsey's loose touch played Ian Henderson in on goal, the forward's chip having the distance but not the direction to find the net.

Oliver Rathbone went closer still for the visitors, skipping clear of Victor Nirennold and shaving the woodwork with an effort intended to squeeze inside the back post as Keith Hill's men finished the stronger but were forced to share the spoils.

Report supplied by the Press Association.

Gillingham 1-1 Port Vale

Debutant Josh Parker snatched a stoppage-time goal to clinch a late point for Gillingham against Port Vale.

Parker stepped off the bench to head home an equaliser after Remi Streete had earlier given the visitors a 49th-minute lead.

A poor first-half saw Vale's JJ Hooper miss when it was easier to score, stabbing an effort wide with Stuart Nelson out of his goal after a contested cross.

Despite the hosts beginning to impose themselves afterwards, they could not seriously trouble goalkeeper Leonardo Fasan, although there was hope for Gills after Ryan Jackson's low drive was deflected wide.

There was only one side seriously in it after the restart. Vale's second-half shape was more rigid, frustrating the tired-looking Gill and a deep corner saw Streete reach the ball first, guiding it into the net.

But Parker found himself unmarked in the box late on and his header rescued a point for Gillingham, who are still without a win in 2017, while their opponents are also still in the same position and one point further back.

Report supplied by the Press Association.

Millwall 1-0 Southend

Fred Onyedinma's second-half header proved enough as Millwall saw off play-off rivals Southend United at the Den.

The Shrimpers had midfielder Will Atkinson sent off in the 34th minute and the Lions took full advantage to secure all three points.

The home side had the better of the first half with Steve Morison and Aiden O'Brien both going close to scoring before the visitors were reduced to 10 men when Atkinson was sent off by referee Andre Marriner for a late challenge on Millwall skipper Tony Craig.

Southend initially held firm and momentarily threatened when Michael Timlin sliced Anthony Wordsworth's right-wing cross wide of the left post.

But Millwall made the breakthrough in the 62nd minute when Shaun Cummings' right-wing cross was missed by Southend defender Jason Demetriou at the far post, enabling Onyedinma to head the ball into the bottom right-hand corner of the net.

The Shrimpers were unable to get back into the game but had strong shouts for a penalty waved away in the closing stages when Jermaine McGlashan appeared to be hauled down in the box by Craig.

Report supplied by the Press Association.

Northampton 3-1 Chesterfield

John-Joe O'Toole's first-half brace set Northampton Town on their way to victory over struggling Chesterfield at Sixfields.

Marc Richards was denied by goalkeeper Lloyd Allinson before Northampton went ahead in the 12th minute when O'Toole headed home from Hiram Boateng's corner.

The visitors responded well to going behind. Daniel Jones had a shot blocked while Dan Gardner fired over from long range and David Faupala was denied by Adam Smith.

In between, Michael Smith went close for Cobblers as did O'Toole with another header. Faupala and Tom Anderson were also off target with headers for Chesterfield.

But Cobblers doubled their advantage three minutes before the break. Keshi Anderson's shot was blocked and O'Toole was on hand to score from close range.

And the hosts extended their lead three minutes after the restart when Richards headed home a Matt Taylor free-kick.

Jon Nolan went close for the visitors before they reduced the arrears from a 54th-minute free-kick when Dion Donohue set up Faupala, who fired home from inside the box.

The second half developed into a scrappy affair despite Chesterfield getting back into it.

Smith went close for Cobblers while Liam Grimshaw was just off target from the edge of the 18-yard box and substitute Ched Evans shot wide for Chesterfield. But their poor run on the road continued and they find themselves in relegation trouble.

Report supplied by the Press Association.

Oldham 3-2 Coventry

Coventry suffered their fifth straight league defeat as they went down at fellow strugglers Oldham, who moved out of the relegation zone.

The rock-bottom Sky Blues were punished for defensive errors and have now taken just two points from their last 14 League One outings.

Oldham, who started the day in 21st, led after eight minutes as Ryan Flynn crossed from the right and Coventry defender Kevin Foley horribly miscued his clearance, scoring an own goal from six yards.

The visitors were level just a minute later when Marcus Tudgay seized possession 25 yards out and hit a powerful shot which dipped under the crossbar.

Callum Reilly almost put Coventry ahead with a curling effort against the bar, while George Thomas was denied by Oldham goalkeeper Connor Ripley.

Yet the visitors were guilty of another howler on 66 minutes as keeper Reice Charles-Cook dropped a simple high ball which allowed Oldham skipper Peter Clarke to bundle into the empty net.

The Latics quickly made it 3-1 as Ryan McLaughlin sprinted through half-hearted tackles before drilling into the bottom corner from 14 yards.

Coventry regained hope on 76 minutes as substitute Kwami Thomas buried a header from Ryan Haynes' left-wing cross, but Oldham held on for a vital three points.

Report supplied by the Press Association.

Oxford United 1-0 MK Dons

Substitute Kane Hemmings snatched a late winner as Oxford made it five victories in a row in all competitions by beating MK Dons.

Hemmings glanced in a header from Rob Hall's right-wing cross to end the visitors' recent good run of six league games unbeaten.

A hard-fought encounter at the Kassam Stadium looked to be going the same way as the meeting earlier in the season, which finished in a goalless stalemate.

But Hemmings, who had only come on in the 73rd minute, showed his prowess in the box with his 14th goal of the season with just two minutes to go.

And Oxford almost made it 2-0 in the sixth minute of stoppage time when Rob Hall was brought down by Darren Potter, who was sent off for his second yellow card, only for Chris Maguire to see his penalty saved by David Martin.

Dons had started strongly and only a smart one-handed save down to his left by Simon Eastwood denied Chuks Aneke from 12 yards on three minutes.

Stuart O'Keefe should have done better than scoop his shot from six yards over the bar as the visitors squandered another good opportunity and they were made to pay as Hemmings secured a late win.

Report supplied by the Press Association.

Peterborough 0-1 Sheffield United

Sheffield United left it late to turn their dominance into a League One victory at Peterborough.

The table-toppers squandered a host of chances before Billy Sharp struck from point-blank range with three minutes to go for his 20th goal of the season that extended their lead at the top to five points.

Sharp pounced at the back post after strike-partner James Hanson had headed down a cross from the right.

It sparked jubilant scenes among a travelling army of almost 4,000 Blades fans at the ABAX Stadium.

Chris Wilder's men had looked like drawing a blank with Hanson being denied by Posh goalkeeper Luke McGee either side of half-time.

Hanson also fluffed the rebound on the first of those occasions with Daniel Lafferty lashing a follow-up over after the second opportunity.

Hanson also headed wide late on, but then turned provider for Sharp to settle the contest in the 87th minute.

Blades goalkeeper Simon Moore was a virtual spectator. His only real task was keeping out a 30-yard drive from Marcus Maddison in the second half.

Home debutant Anthony Grant also flashed a long-range blast wide late on for a home side who were short on attacking ideas.

Report supplied by the Press Association.

Scunthorpe 0-1 Shrewsbury

Shrewsbury ended Scunthorpe's 26-game unbeaten home run with a 69th-minute strike from Freddie Ladapo.

It was the fourth goal in six games for the Crystal Palace loanee, who produced a clinical finish at the near post after an excellent run down the left by Tyler Roberts had created the opening, and stretched Shrewsbury's own unbeaten league run to six games.

After a lacklustre first half, Scunthorpe boss Graham Alexander tried to shake things up with a double substitution, replacing Tom Hopper and Kevin van Veen with Paddy Madden and Ivan Toney.

But Shrewsbury left-back Junior Brown tested goalkeeper Luke Daniels with a good effort, and they eventually opened the scoring through Ladapo.

Scunthorpe finally stirred in the closing stages with a shot from Duane Holmes which was deflected just wide.

But their hopes of rescuing a point disappeared in the closing minutes when a close-range header from substitute Craig Davies was brilliantly kept out by Jayson Leutwiler.

Report supplied by the Press Association.