Правильно: надеть на него шляпу.
Одеть и надеть — это паронимы, то есть есть слова, похожие по звучанию, но различающиеся по смыслу. Именно из-за похожести некоторые путаются в их употреблении.
Надеть можно что-то на кого-то или на что-то — например, надеть платье на куклу или перчатку на руку. Одеть можно только кого-то — например, одеть ребенка. Иногда глагол употребляют в переносном значении — например, зима одела поля снегом.
Последние ответы справочной службы
В этом случае каждая часть имеет собственный детерминант (сначала, затем, в последнюю очередь), а потому предпочтительна трактовка предложения как сложного.
Страница ответаЗапятая ставится: Я поступил туда просто потому, что прошёл по баллам.
Страница ответаВ таком случае прилагательное непоследний обозначает тип документа и пишется слитно с не (сравним: непищевые красители, неметаллы).
Страница ответа