i was told the best way (and this was in regards to a baby), is to sit them down in someone's lap, and then give them a toy, to distract them. otherwise they're going to see them scissors and snatch em! that's always fun, cleaning up after that. hope that helps.
when Ds was little it was a fight, he would sit on my hubbys lap and I would cut his hair. Then he got older and would still either sit on someones lap or have to be held still and it was a fight. one day I just ddnt feel like fighting, sat him in the chair and walked away. Sat right behind him in the mirror and he sat perfectly still and had no probs. That was at 2 1/2. I think by holding him down I was scaring him more than the haircut.
I put mine in a booster seat (like to eat in) and buckle him in so that he can't get up. Then I turn the TV on and give him a toy or my iPhone so that he can play games on it. I used to also give him a cookie or something to distract him. It was always a fight for us, too.