How can I get my son to let me wash his hair without a fight?

Hi there. I’m a first-time mom, and I’m having the worst time washing my almost-three-year-old son’s hair. He will be 3 in July, and I just don’t know what to do. Every bath or shower is a nightmare. Lots of tears from both of us because I just don’t know what to do. I can’t just let him run around with unwashed hair, but I can’t deal with the heartbreaking crying. I’ve tried using a cup to rinse his hair, using a rag, using my hand to cup the water, giving him a rag to cover his eyes, and nothing works. Any ideas, please.