The Londoners, fourth in the Premiership and unbeaten in their last seven matches were completely out of sorts and Leeds thoroughly deserved their victory.
Leeds certainly like The Valley as this was their fourth successive win on the ground and although it didn't compare with last season's 6-1 result, the three points were a welcome and unexpected relief for the beleaguered team.
Charlton without four strikers, among them the controversial Paulo Di Canio, were tactically out-played by Leeds, who flooded the midfield with five players.
Alan Smith, back after suspension, fired Leeds forward and their gameplan was helped by an early goal which was to prove the vital winner.
It came after nine minutes and was well taken by 17-year-old James Milner after he was put through by Mark Viduka and Viduka then had a shot cleared off the line.
Charlton's only worthwhile chance of the first half fell to skipper Matt Holland, but his close-range header hit the post and was scrambled clear.
Although their defence has conceded 33 goals in 13 Premiership matches before this game, Leeds stood firm after the interval although Charlton went close a couple of times to get in an equaliser.
Jason Euell had a cross scrambled away, hit another one off the bar and on-loan Carlton Cole, who came on at the break for Mathias Svensson, saw his header turned away for a corner by Paul Robinson.
This was a thoroughly professional performance by Leeds which will give caretaker manager Eddie Gray plenty of pleasure, but for lacklustre Charlton it was a very bad day at the office.