A. They praised his diligence/courage/honesty.
B. They praised him for his diligence/courage/honesty.
In the sentences above, only B is correct, or both A and B are correct? What is the difference? Thank you very much.
I suppose that, logically, only B accurately describes what happened, but A is acceptable, in my opinion, with the same meaning intended.