The 22-year-old Braddock (1-0) pitched a scoreless ninth. Upon entering the clubhouse after the game, the reliever was doused in suds by his teammates.
"It's a great experience, especially coming at this time," said Braddock, who made sure to get the game ball as a souvenir. "The team's been fighting hard every night and I'm fortunate to have my first win pick up the team."
It was a welcome celebration for the Brewers, too.
"We haven't too many moments like that this season," manager Ken Macha said.
The Cardinals, who had won three straight, fought back from a three-run deficit but lost for the third time in 10 games.
"We had a hellacious effort," manager Tony La Russa said. "We hung in there and hung in there and had a couple of chances to win it and didn't."
Jason Motte (2-2), who had retired 32 consecutive batters, walked Prince Fielder with one out in the 10th. Ryan Braun followed with an infield single and Casey McGehee also singled, loading the bases. Hart drove in Fielder with a fly to center.
"I just didn't get it out enough and it got too much of the plate. He hit it in a spot where we couldn't do anything with it," Motte said.
Parra made his third start of the year and struck out four batters in the fourth inning -- the 55th time that's happened in major league history. Yadier Molina reached safely when he swung and missed at a pitch in the dirt that eluded catcher George Kottaras and was ruled a wild pitch.
"It's really exciting because it doesn't happen very often," Parra said. "I was really staying within myself, trying not to overdo things."
Parra allowed four hits and four walks.
St. Louis rookie left-hander Jaime Garcia gave up a career-high eight hits in six innings before leaving for a pinch-hitter.
"We took the loss, so the first thing I want is for the team to win," Garcia said. "Flush this one out and go for the next one."
Garcia pitched out of trouble in four innings.
"He didn't put hitters away," La Russa said. "The ball was in the middle of the plate. It was one of those nights. We have to identify why he wasn't quite as sharp."
The Brewers loaded the bases on three consecutive singles to start the game but Garcia held Milwaukee to two runs. An error by third baseman Felipe Lopez scored Weeks, and a sacrifice fly by McGehee drove in Carlos Gomez. A double play helped Garcia escape further damage.
Weeks hit a first-pitch homer to lead off the third for a 3-0 Milwaukee advantage. A double play helped Garcia out of the inning.
With two outs in the fifth, Milwaukee loaded the bases but Garcia caught Hart looking.
Colby Rasmus, hitless in seven career at-bats against Parra, smacked a leadoff homer in the third, making it 3-1. In his last six games, Rasmus is 11 for 22. He left the game with tightness in his left calf after six innings.
The Cardinals had a chance for a big inning in the sixth but the Brewers' bullpen stymied St. Louis. Pujols hit his third homer at home leading off the inning. After getting Matt Holliday to fly out, Parra walked three straight batters. He gave way to Dave Bush, who made his first relief appearance of the season.
The Cardinals tied it at 3 in the eighth on a sacrifice fly by Randy Winn, who entered in the seventh to replace Rasmus.Notes
- La Russa said he expects to give third baseman Freese time off except for pinch-hitting until Friday in Arizona. Freese twisted his right ankle running into third base Saturday.
- La Russa has not announced a starter for Monday's game in Los Angeles but said he is leaning toward Blake Hawksworth instead of rookie P.J. Walters against the Dodgers.
- Fielder has played in 242 consecutive games, the longest streak in the majors and fourth-longest in Brewers history.
- Weeks led off all three games of the series with a hit. He doubled Friday, homered Saturday and singled Sunday.