Both teams were scheduled to play Monday through Wednesday at Busch Stadium in St. Louis.
"In light of the most recent positive test results, MLB and the [Cardinals] believe it is prudent to conduct additional testing while players and staff are quarantined before the team returns to play," the league said in a statement Sunday.
The Cardinals' three-game weekend series against the Chicago Cubs also was postponed after the league said two Cardinals players and one staff member tested positive for the coronavirus from testing conducted Wednesday and Thursday.
The Cardinals announced Sunday that outfielder Lane Thomas also tested positive. In total, 10 players and seven staff members have recorded positive COVID-19 tests since last week. St. Louis hasn't played since July 29.
"It's a bummer. We're learning as we go," Cardinals President John Mozeliak said Sunday. "What's the right amount of time to not assemble to try and prevent the spread? I don't think we know that answer perfectly. ... We're doubling down on our tracing."
The coronavirus has now forced MLB to postpone 27 total games. The Cardinals have had 13 games scrapped, while the Miami Marlins and Philadelphia Phillies each had seven games postponed. The Marlins and Phillies have since returned to the field.