Длинный is only used as long for hair too right? What other cases? Not for tall right?
First of all, долго is an adverb. The adjective would be долгий. Долгий is almost exclusively used with periods of time, using it in any other case would sound very old-fashioned. Now I must add that in this particular sentence you can say "Какой долгий ответ" if you mean that the answer took much time.
"Долго" doesn't work, it's not an adjective. And this is where I have to confess to an embarrassing ignorance of English grammar because I'm not sure what it is... I'm wanting to say adverb. It means "for a long time". There's a bit of difference between the adjective"долгий" and "длинный", the first means "long in time" while the second is "long in distance". The second sounds better here, I think.