Danny Hollands scored twice as Charlton held off a spirited Rochdale comeback.
Johnnie Jackson crossed for Hollands to head the Addicks ahead before Rhoys Wiggins slotted in from close range to double their lead before half-time.
Ashley Grimes headed in Jean-Louis Akpa Akpro's cross to pull a goal back for the home side and David Ball's low shot from six yards made it 2-2.
Hollands grabbed Charlton's winner 10 minutes from time, heading in Jackson's deep corner at the back post.
Rochdale manager Steve Eyre told BBC Radio Manchester:
"We were not at the races in the first half, but we regrouped at half-time and in the second half we were excellent.
"There were a few home truths at half-time and we wanted everyone to tighten up and take more care of the football.
"We've scored two goals again but let's not get away from the fact that we've conceded three at home softly. It's a fine line but we're not happy."