have (someone) by (something)
To hold someone in place by grasping something, such as a body part or a piece of clothing (named after "by"). Tommy had the burglar by the throat when the police arrived. I had my brother by the sleeve and pulled him back into the house.
Farlex Dictionary of Idioms. © 2015 Farlex, Inc, all rights reserved.
have someone by something
to hold onto someone by something. (See also have someone by someone or something.) She had me by the shoulder and I couldn't get away. Timmy had Billy by the collar and was punching him on the shoulder.
McGraw-Hill Dictionary of American Idioms and Phrasal Verbs. © 2002 by The McGraw-Hill Companies, Inc.