Wigan took the lead in the fourth minute when David Wright crossed from the right for Nathan Ellington to head home beyond the despairing dive of Steve Bywater.
Jackson headed at Bywater from a cross by ex-Hammer Jimmy Bullard as the visitors continued to press, and Repka's lofted back pass was dealt with confidently by the Hammers keeper who headed it away from the danger zone before clearing.
Matthew Etherington headed an Anton Ferdinand cross over while West Ham survived a scare when, after Steve Bywater dropped a cross, Jason Roberts turned over a Lee McCulloch ball.
McCulloch then nearly scored himself from a powerful header that Bywater did well to save when he dived to his right.
Jason Roberts made it 2-0 just before half time when he beat Repka for pace and rounded Bywater to stroke the ball home.
Alan Pardew brought on Luke Chadwick and Bobby Zamora for Sergei Rebrov and Marlon Harewood at half time and the fresh legs gave the side - and the crowd - a boost.
But the optimism was quickly negated by Nathan Ellington, who put the game beyond reach when he clinically headed home a Gary Teale cross from the right after a swift break.
Ellington and Frandsen both tested Bywater before Bobby Zamora pulled one back at the second attempt when he turned home Nigel Reo-Coker's low cross.
Bobby Zamora might have got his second when Etherington crossed from the left, but he clipped his shot wide with his right foot.
Chris Cohen came on for Rufus Brevett; he made his presence felt with some lively runs and had a penalty appeal turned down in injury time when he appeared to be impeded as he shaped up to shoot from close range.
Anton Ferdinand, who was called up for England U21s along with Nigel Reo-Coker to face Ukraine in the week, came in as a replacement for Christian Dailly, who has a knee injury, while Teddy Sheringham was made captain.