Oshie, the first shooter for the Blues, fooled Devils goalie Johan Hedberg with an off-speed shot that trickled through his pads.
Elliott, who came on to replace Jaroslav Halak in the second period, stopped Ilya Kovalchuk, Patrik Elias and Zach Parise. Elliott also stopped all 15 shots in regulation and overtime.
FLYERS 4, MAPLE LEAFS 3
In Philadelphia, Claude Giroux and Brayden Schenn scored 1:14 apart in the second period to lift the Flyers over Toronto.
Scott Hartnell and Max Talbot also had goals for Philadelphia.
Tyler Bozak scored two goals and Joffrey Lupul had one for the Leafs.
RANGERS 4, LIGHTNING 3 (OT)
In New York, Brad Richards scored 3:37 into overtime to give the Rangers a win over Tampa Bay.
New York’s Brian Doyle tied it at 10:13 of the third period, pouncing on a loose puck and driving it past Mathieu Garon.
Steven Stamkos scored his NHL-best 36th goal of the season in the first period and added an assist for Tampa Bay.
JETS 3, CAPITALS 2 (SO)
In Washington, Winnipeg overcame a two-goal deficit in the final 2:15 of regulation, then prevailed in a shootout over Washington.
Evander Kane and Dustin Byfuglien awoke a pedestrian Jets attack with power-play goals to force the game into overtime.
STARS 4, BLUE JACKETS 2
In Columbus, Ohio, Jamie Benn scored two goals and Kari Lehtonen had 26 saves to make an early lead stand up in Dallas’ victory over the Blue Jackets. Alex Goligoski and Stephane Robidas each had a goal and an assist, and Mike Ribeiro added two assists for the Stars.
CANADIENS 4, ISLANDERS 2
In Uniondale, N.Y., Max Pacioretty had three goals, Scott Gomez netted his first in more than a year, and Montreal beat New York for its third consecutive win.
Pacioretty scored in all three periods, and the Canadiens (22-24-9) moved one point ahead of the Islanders (22-23-8) in the non-playoff section of the Eastern Conference.
PANTHERS 3, KINGS 1
In Sunrise, Fla., Sean Bergenheim and Mike Santorelli scored in the second period, sending Florida over Los Angeles.
Matt Bradley also scored for the Panthers and Scott Clemmensen stopped 22 shots.
SENATORS 4, PREDATORS 3
In Ottawa, Chris Phillips scored his first two goals of the season in his 1,000th NHL game, Jason Spezza also scored twice and the Senators ended a seven-game losing streak with a win over Nashville.
CANUCKS 5, WILD 2
ST. PAUL, Minn., Henrik and Daniel Sedin both scored against Minnesota for the first time in their careers to lead Vancouver to a win over Minnesota. Maxim Lapierre, Manny Malhotra and Ryan Kesler also scored for the Canucks.