Scunthorpe started brightly and might have gone in front as early as the seventh minute at The Valley on Saturday when Grant's effort from the right of the penalty area had to be tipped behind by Addicks goalkeeper Rob Elliot.
Paul Hayes should have done better after firing wide, but it was the League One leaders who made the breakthrough in the 20th minute when Bradley Wright-Phillips flicked a header to Johnnie Jackson.
The midfielder was able to loop his header over Iron goalkeeper Josh Lillis for his second goal of the campaign.
Scunthorpe began the second period brightly, but went further behind in the 57th minute as Wright-Phillips headed home Danny Hollands' cross at the far post from point-blank range,
Elliot, who this week was the subject of a bid from Newcastle, made an excellent save on the hour-mark to push behind Grant's overhead kick, but the striker reduced the arrears in the 73rd minute by firing past Elliot and rescued a point in stoppage time when converting from close range.