Chicago rallied against St. Louis closer Alex Reyes, who had converted his first 22 saves opportunities this season.
Chicago sent 10 batters to the plate in the ninth and capitalized on three walks and an error. Javier Baez trimmed the deficit to 6-5 with a two-run single off Reyes, Happ followed with a two-run double to put his team up 7-6. Craig Kimbrel pitched a 1-2-3 ninth to earn the save, his 22nd.
The injury is not believed to be serious.
RHP Miles Mikolas threw a 60-pitch bullpen session on Tuesday and will likely go out on a rehab assignment this weekend. Mikolas has been out since May 23 with right forearm tightness.
First place Milwaukee leads second place Cincinnati by 6 1/2, the Cubs and Cardinals are tied for third place, 8 1/2 games out.