|St Helens (10) 12|
|Tries: Turner, Fleming Goals: Percival 2|
|Widnes Vikings (6) 10|
|Tries: Thompson, Ah Van Goal: Hanbury|
Mark Percival's penalty nine minutes before full-time earned victory for St Helens over neighbours Widnes Vikings.
Jordan Turner marked the 250th appearance of his career with Saints' first try of the game.
Matty Fleming cancelled out Corey Thompson's score to give the home side a 10-6 lead at the interval.
Patrick Ah Van's acrobatic effort brought Widnes level at Langtree Park, but Percival's second successful kick sealed the game in Saints' favour.
Victory means Keiron Cunningham's side are two points behind fourth-placed Catalans Dragons and will be no lower than fifth at the beginning of the Super 8s.
Widnes, fresh from a win at champions Leeds in their previous outing, are still not guaranteed a top-eight finish but require only one point from their next two fixtures to avoid a spot in The Qualifiers.
|Friday's other Super League reports|
|Hull FC 15-20 Leeds Rhinos|
|Hull KR 20-19 Huddersfield Giants|
|Wigan Warriors 22-18 Wakefield Wildcats|
St Helens coach Keiron Cunningham: "Both sides probably deserved something out of the game. Widnes took the second half but we hung in there to win it with that goal in the end.
"It was a character-building performance and it's about time we had a bit of luck.
"For large portions of the second half, we had to defend on the back foot. We had a lot of kids out there, which is very good for the future.
"Jonny Lomax is into week nine of his comeback and we always said it would take 10 weeks to hit the full straps. He wasn't quite clinical enough with the ball but his defence was outstanding."
Widnes head coach Denis Betts: "It was a full-blooded contest and a real tussle. We were on the end of a couple of tough calls but it was a really good rugby league game.
"They were desperate but we defended really well and are massively disappointed because I thought we did enough to win.
"We started poorly but our effort and energy was really high and we are showing we are a tough team to beat."
St Helens: Lomax; McDonnell, Fleming, Percival, Owens; Turner, Wilkin; Walmsley, Roby, Richards, McCarthy-Scarsbrook, Greenwood, Thompson.
Replacements: Amor, Vea, Ashworth, Knowles.
Widnes Vikings: Hanbury; Thompson, Runciman, Marsh, Ah Van; Mellor, Brown; Cahill, White, Buchanan, Houston, Dean, Leuluai.
Replacements: Manuokafoa, Dudson, Whitley, Burke.
Referee: Gareth Hewer