The trick is here: "高兴" can be used as a adj (it can combine with "地" so the phrase "高兴地" is a adv) or a noun, but "高兴" is also a verb (so this verb can combine with "得" and the phrase "高兴得" is a grammatical correctly adv). A adj "xx" can combine with a "得" to form a adv "xx得" (as you already knew), but many verbs can also combine with a "得" to form many advs. If word can both serve as a adj or a verb, then it can combine with either a "地" or "得" to form a adv!
I think most Chinese verbal words can form verbs by such way (to add the suffix "得"). Generally, Chinese people just don't use special forms to distinguish noun, verb and adj that derived from the same word/stem. If a word have more than one grammatical usage, you can only tell "which part of speech"(词性) a word is by check the context.
"他高兴地笑了" and "他高兴得笑了" have similar meaning. And the latter form is often used to express a slightly stronger emotional feeling.
e.g.:
他 开心。 He is happy.
他 开心地 大叫。 He shouts happily.
他 开心得 大叫。 He is so happy that he shouts.