Kicker Sergio Castillo nailed a 47-yard field goal with 24 seconds remaining in the fourth quarter to secure the win.
Saskatchewan, which trailed 23-14 early in the fourth, took a 24-23 lead with 1:08 remaining courtesy of a seven-yard touchdown pass from Cody Fajardo to Kian Schaffer-Baker.
The Elks improve to 4-10 with the victory while the Riders fall to 6-8 as they head into a bye week.
Edmonton’s offence totalled 423 net yards behind an impressive 202 yards on the ground.
Quarterback Taylor Cornelius completed 13 of his 24 passes for 237 yards and one touchdown. He also added 93 rushing yards on eight carries. Running back Kevin Brown eclipsed the 100-yard mark, gaining 109 yards on 14 carries.
What are ‘Buy Nothing’ groups? Experts say trend can help Canadians handle inflation
Irene Cara: ‘Fame’ and ‘Flashdance’ star dies at 63
Edmonton controlled the score for much of the game despite committing 12 penalties for 158 yards.
In spite of the mishaps, the offence used big plays to take advantage of a shaky Saskatchewan defence.
Cornelius connected with Dillon Mitchell on a 77-yard TD reception in the second quarter to take the lead after being down 10-0 early in the game. On the ground, Cornelius and Brown registered longs of 56 and 36 yards, respectively.
In addition to his game-winning field goal, Castillo also hit from 13, 23 and 43 yards.
The Riders, who entered the game having allowed a league-high 51 sacks, gave up eight to the Elks.
Wide receiver Shaq Evans scored on a 42-yard touchdown reception in the first quarter for the Riders, while kicker Brett Lauther added three field goals from 39, 34 and 22 yards.