West Brom moved to the top of the table as Newcastle lost to Nottingham Forest and Watford upset Middlesbrough.
Elsewhere, Barnsley won their Yorkshire derby with Doncaster, Peterborough drew at Bristol City and Sheffield Wednesday overcame Coventry.
West Brom came from behind to beat Reading 3-1 at the Hawthorns to go top of the table on goal difference.
Matt Mills stunned the home side with the opener after six minutes, but two goals from Jerome Thomas (29, 65) turned the game in West Brom's favour.
Youssouf Mulumbu's late strike put the game beyond Reading to give West Brom the points.
Newcastle fell to their second defeat of the season after going down 1-0 at Nottingham Forest.
Dexter Blackstock scored the only goal of the game just before the break to give Forest their fourth win on the trot and lift them up to seventh spot in the table.
Middlesbrough's home woes continued after Watford picked up a 1-0 win at the Riverside.
Loan star Tom Cleverley scored the only goal of the game on 26 minutes to increase the pressure on Gareth Southgate.
George Boyd's last-gasp goal earned Peterborough a 1-1 draw with Bristol City at Ashton Gate.
Cole Skuse gave City the lead just past the half-hour mark, but Boyd earned Darren Ferguson's men a precious point with a last-minute equaliser.
In the early kick-off Scunthorpe recorded their first win in five games with an impressive 3-1 victory over Sheffield United.
Two goals from Grant McCann and another from Paul Hayes gave Scunthorpe the points with Ched Evans netting for the visitors.
Queens Park Rangers maintained their unbeaten home record with a thumping 4-0 win over Preston at Loftus Road.
Adel Taarabt's fine solo goal after 11 minutes and Akos Buzsaky's 63rd minute penalty put QPR in firm control.
Jay Simpson added a third on 74 minutes and Wayne Routledge netted a fourth five minutes from time.
Cardiff missed the chance to close the gap on the leading pack after being held at home by Crystal Palace.
Mark Hudson gifted Palace the lead with an own goal for his old side after just 13 minutes, but Peter Whittingham levelled matters on 19 minutes.
Ipswich are still looking for their first win of the season after being held to a 1-1 draw at home by Swansea.
Craig Beattie gave Swansea an early lead after just seven minutes, but Pablo Counago drew Town level on the quarter hour.
Barnsley continued their resurgence under Mark Robins with a 1-0 success over Doncaster at the Keepmoat Stadium.
Adam Hammill netted the winner for the Tykes 16 minutes from time.
Ian Holloway got the better of his old club Plymouth as his Blackpool troops won 2-0 at Bloomfield Road.
Marcel Seip, who is on loan at Blackpool from Plymouth, came back to haunt his parent club after he opened the scoring on 31 minutes on his debut.
David Vaughan ended a good week for himself with a second on 64 minutes to move Blackpool into fifth spot.
Sheffield Wednesday leapfrogged Coventry in the table with a 2-0 win over the Sky Blues at Hillsborough.
Darren Purse gave Wednesday the lead after just four minutes and Leon Clarke added a second from the penalty spot on 20 minutes.
Leicester and Derby shared the spoils in their Midlands derby after a goalless draw at the Walkers Stadium.