The New Zealander took 5-24 as Hastings were bowled out for 126. Conor Golding took 3-19.
In reply, O’Donnell then hit an unbeaten 56 from 40 balls to guide Bridges home.
Brighton and Hove (116-5, revised target) beat Cuckfield (120-6). Ollie Graham hit an unbeaten 53 for Cuckfield while Simon Hetherton took 3-18 for Brighton, who are now top of the league..
Alastair Orr hit 69 not out to guide Eastbourne (143-6, revised target) home against Haywards Heath (175-7). Eastbourne were 22-3 in the chase before Orr and Oli Carter (45) steadied the ship. Charlie Rutter took 4-27 for Heath. Henry Sims hit 50 for Heath.
Middleton (141-6) beat Preston Nomads (131-8, revised target) by five runs to pick up their first win of the season.
Sam Rattle took 3-22 and Lewis Hatchett 3-21 as East Grinstead bowled Roffey out for 121 before rain forced the game to be abandoned.
Rain had a big effect on Division 2 with Burgess Hill’s game against Preston Nomads 2nd XI (103-4) after 28.3 overs.
Roffey 2nd XI were 39-1 from 10.3 overs before rain stopped their game at St James’s Montefiore while Mayfield v Lindfield was cancelled.
But Bognor (140-8) continued their great start with a 71 run win over Billingshurst (69 all out). Mike Harris took 4-18 for Bognor.
Horsham (148-2) cruised to an eight-wicket win over Chichester Priory Park (176 all out). Nick Oxley took 5-38 and 49 not out for Horsham and Will Beer 77.
In Division 3 West, Ansty (161-8) picked up a 45-run win over Littlehampton, Clapham and Patcham (116 all out).
David Everett (4-15) and Harrison Grayston (4-37) were the stars for Findon (166 all out) as they beat Pagham (130 all out).
Broadwater v West Chiltington was cancelled and Henfield (26-1) v Goring-by-Sea was abandoned after 8.5 overs.
In Division 3 East, Wazir Khan took 4-14 as St Peters bowled Crawley Eagles out for 96. Rohan Doyle hit 62 from 30 balls as St Peters won by 10 wickets.
Robert Mouland hit 68 not out and Craig Eaves took 4-15 as Glynde and Beddingham (202-9) beat Eastbourne 2nd XI (120 all out) by 82 runs.
Ifield (132-5) enjoyed a 29-run win over Rye (103 all out). Alfie Pyle took 3-15.
Bexhill v Seaford and Portslade v Brighton and Hove 2nd XI were cancelled.
In Division 4 West, Jake Moores hit 50 as Stirlands (140-3) beat Chichester Priory Park 2nd XI (139 all out) by seven wickets.
Dan Robinson hit an unbeaten 66 as Chippingdale (118-6) beat Crawley (118-6).
All other games in that division were cancelled or abandoned..
In Division 4 East only one game was completed as Crowhurst Park 209-9 beat Lewes Priory (194 all out) by 15 runs. Tim Hambridge hit 57 for Park while Imran Khan took 5-40 for Priory.
Other notable performances
Division 5 Central: Michael Hindle took 5-28 for St James’s Montefiore against Balcombe.
Division 5 East: Jamie Francis took 5-22 for East Dean; James Bellett took 6-5 for Hailsham
Division 6 Central: Harry Deacon took 5-26 for Burgess Hill 2nd XI.
Division 6 East: B Harris 116 not out for Pett; Jake Barber took 5-21 for Glynde and Beddingham 2nd XI
Division 7 West: Gary Maskel hit 108 and Dan Winslow took 6-12 for Bognor Regis 2nd XI against Stirlands 2nd XI.
Division 7 East: Jake Callow took 5-17 for Robertsbridge.
Division 8 West: Jake Humphreys took 5-18 for Roffey 3rd XI but they lost by one wicket to Henfield 2nd XI.
Division 8 Central: Kuganesh Karuppiah hit an astonishing 158 from 76 balls for Forest Row.
Division 8 East: William Mills 112 for Dicker against Linden Park.
Division 9 West: Elliott Purser took 5-17 for Bosham; James Staight took 6-29 for West Wittering.
Division 10 West: Girish Naik took 6-7 for Ram.
Division 10 East: James Pexton hit 14 sixes in an unbeaten 131 not out for Robertsbridge 2nd XI.
Division 11 West (North): Callum Barrett took 5-30 for Barns Green.
Division 12 Central (South): Dave Bennett took 6-5 for Newhaven.
Division 12 Central (North): Harry Emms took 4-8 for Hurstpierpoint.