Elliott was traded from St. Louis to Calgary in June, and the 17,337 in attendance serenaded Elliott with chants of "Moose," his nickname, on his first couple of saves. Elliott's best save came late in the second when he slid his right pad across the crease to rob Nail Yakupov on a rebound attempt.
Dennis Wideman and Deryk Engelland also scored to help the Flames snap a seven-game losing streak at St. Louis.
Kevin Shattenkirk scored for the Blues on a two-man advantage in the third, and Carter Hutton made 26 saves. After winning their first three games, the Blues are 1-2-1 in their last four.