Taylor Ward hit a grand slam to cap a six-run ninth inning as the Angels defeated the San Diego Padres.