The deadlock was broken in the 10th minute by Walsall's Jordan Cook, who was making his first start of the campaign. He was picked out by Andy Butler and the youngster showed good composure to beat Paul Rachubka.
The Walsall stopper, though, could do little to prevent Wilkinson from levelling up the score in the 31st minute. A counter-attack involving Carl Winchester and Jones picked out the Bolton loanee, who swept his effort beyond the reach of O'Donnell.
Oldham started the second half brightly, with substitute and debutant Jabo Ibehre almost making an immediate impact, only for O'Donnell to turn away his effort in the 58th minute from a Jones cross.
However, O'Donnell was eventually beaten again as Oldham turned their domination into a second goal with 15 minutes left to play. Having had a creative game, Jones tried his luck from 25 yards out and saw his shot hit the back of the net via the underside of the crossbar.
Walsall pushed hard for an equaliser in the closing stages, but the hosts held out to claim all three points.