Ipswich returned to winning ways and moved level on points with Championship leaders Leicester after coming from a goal down to beat Swansea 3-2.
Town, who had been held to back to back league draws after their Carabao Cup exit, fell behind after just seven minutes when Jay Fulton’s header found the back of the net.
But Jack Taylor’s wonderful long-range strike drew the teams level after 17 minutes, Conor Chaplin put them ahead five minutes later and George Hirst converted a second-half penalty.
Swansea’s Liam Cullen was sent off after receiving a second yellow card midway through the second half but the visitors still managed to pull one back through Jamal Lowe.
But Town held on for a victory that moved them level on points with the Foxes, who lost 1-0 at Middlesbrough.
Swansea took the lead when a free-kick by skipper Matt Grimes found Lowe and his cross was headed home by Fulton.
But Town struck back when Taylor, making his first home league start, rifled the ball into the net from 25 yards to record his first league goal for the Town.
Chaplin put Ipswich in front in the 22nd minute when he linked up with Hirst before squeezing the ball inside the near post.
Almost every outfield player was involved in a melee during a flashpoint in the game which resulted in referee Sunny Singh Gill, officiating in only his second Championship game, booking Chaplin and Wales international Cullen.
Town missed a wonderful opportunity to extend their lead after 36 minutes when Omari Hutchinson found space on the right and with just Carl Rushworth to beat crossed the ball just in front of a sliding and unmarked Nathan Broadhead.
Rushworth came to Swansea’s rescue just before the break when he palmed away a shot from Hirst and Grimes appeared to foul Taylor in the penalty area but the referee turned away strong appeals for a spot-kick.
Harrison Clarke had an effort disallowed following a corner by Leif Davis but Ipswich did extend their lead in the 53rd minute.
Cullen was adjudged to have been grappled by Newcastle loanee Harrison Ashby in the box and up stepped Hirst who fired past Rushworth to give the Town a deserved 3-1 lead.
Cullen was given his marching orders in the 69th minute after he fouled Davis just outside the penalty area but Chaplin’s free-kick went narrowly wide of the right-hand post.
As the game drew to a close, Swansea head coach Michael Duff was given a yellow card and Vaclav Hladky made his first save of the match from Lowe before the Swansea forward pulled a goal back in the fifth minute of stoppage time.